[{"data":1,"prerenderedAt":131},["ShallowReactive",2],{"blog-why-we-built-our-own-ads-trackers":3},{"_path":4,"_dir":5,"_draft":6,"_partial":6,"_locale":7,"title":8,"description":9,"date":10,"author":11,"authorBio":12,"authorLinkedIn":13,"authorTwitter":14,"heroImageUrl":15,"tag":16,"readingTime":17,"body":18,"_type":125,"_id":126,"_source":127,"_file":128,"_stem":129,"_extension":130},"\u002Finsights\u002Fwhy-we-built-our-own-ads-trackers","insights",false,"","Why We Built Our Own Ads Trackers","Ads Manager tells you what happened yesterday, not whether you are on track to hit the monthly number. So we built three trackers that answer that.","2026-03-12","Ryan Carter","Ryan is the Director of Studio Future, a Dubai-based eCommerce agency specializing in Shopify development, digital marketing, and systems integration. With over a decade of experience building high-converting commerce solutions for brands from startups to FTSE 100 companies, Ryan combines technical expertise with strategic growth focus to solve complex eCommerce challenges.","https:\u002F\u002Fwww.linkedin.com\u002Fin\u002Fryantcarter\u002F","https:\u002F\u002Fx.com\u002Fryantcarter\u002F","\u002Fimages\u002Farticles\u002Fwhy-we-built-our-own-ads-trackers.jpg","Lab","4 Minutes",{"type":19,"children":20,"toc":120},"root",[21,29,34,72,79,84,97,103,108],{"type":22,"tag":23,"props":24,"children":25},"element","p",{},[26],{"type":27,"value":28},"text","Meta's Ads Manager is good at yesterday. Deep breakdowns, every metric you could name, sliced any way you like. What it's strangely bad at is the question every merchant and every agency actually asks on the 14th of the month: are we on track?",{"type":22,"tag":23,"props":30,"children":31},{},[32],{"type":27,"value":33},"The monthly goal lives in a planning doc. The daily spend lives in the platform. The projection connecting them lives in someone's head, recalculated badly every few days. We watched ourselves and our clients do this dance every month, so we built the tool that should have existed: upload your daily report, set the monthly goal, and see plainly whether the month lands.",{"type":22,"tag":23,"props":35,"children":36},{},[37,39,46,48,54,56,62,64,70],{"type":27,"value":38},"There are three of them in ",{"type":22,"tag":40,"props":41,"children":43},"a",{"href":42},"\u002Flabs",[44],{"type":27,"value":45},"Labs",{"type":27,"value":47},", because the question comes in three flavours. The ",{"type":22,"tag":40,"props":49,"children":51},{"href":50},"\u002Flabs\u002Fmeta-ads-tracker",[52],{"type":27,"value":53},"Meta Ads Tracker",{"type":27,"value":55}," for spend and revenue goals. The ",{"type":22,"tag":40,"props":57,"children":59},{"href":58},"\u002Flabs\u002Fgoogle-ads-tracker",[60],{"type":27,"value":61},"Google Ads Tracker",{"type":27,"value":63}," for the same on Google. And the ",{"type":22,"tag":40,"props":65,"children":67},{"href":66},"\u002Flabs\u002Fmeta-leads-tracker",[68],{"type":27,"value":69},"Meta Leads Tracker",{"type":27,"value":71}," for lead generation businesses, where the unit that matters is a lead, not a purchase, and cost per lead against a monthly quota is the whole game.",{"type":22,"tag":73,"props":74,"children":76},"h2",{"id":75},"how-they-work-and-where-your-data-goes",[77],{"type":27,"value":78},"How they work, and where your data goes",{"type":22,"tag":23,"props":80,"children":81},{},[82],{"type":27,"value":83},"Each tracker takes the daily report CSV the platform already gives you. It plots the month so far, projects the finish from your current run rate, and breaks performance down by day and by campaign, so you can see not just whether you'll hit the number but which campaign is dragging the average.",{"type":22,"tag":23,"props":85,"children":86},{},[87,89,95],{"type":27,"value":88},"The part we care most about: ",{"type":22,"tag":90,"props":91,"children":92},"strong",{},[93],{"type":27,"value":94},"your report never leaves your browser.",{"type":27,"value":96}," There is no upload endpoint, no server, no account. The CSV is parsed entirely on your device, and if you close the tab, it's gone. We built it this way because we'd want the same courtesy with our own clients' data: an agency's spend report is commercially sensitive, and a free tool is no reason to hand it to a stranger's database. If you're sceptical, open the network tab while you use it and watch nothing happen.",{"type":22,"tag":73,"props":98,"children":100},{"id":99},"the-projection-is-the-product",[101],{"type":27,"value":102},"The projection is the product",{"type":22,"tag":23,"props":104,"children":105},{},[106],{"type":27,"value":107},"A month of ad performance is noisy: spend caps kick in, weekends dip, a creative fatigues. The trackers' projections use your actual run rate rather than a naive daily average, which sounds like a small distinction until the 20th of the month, when a naive average still says you're fine and the run rate says you're 18% short. Knowing that on the 20th leaves you ten days to act. Finding out in the month-end report leaves you an apology.",{"type":22,"tag":23,"props":109,"children":110},{},[111,113,118],{"type":27,"value":112},"We use these on our own client work every week, which is the honest reason they exist: we built them for us, then realised there was no reason to keep them private. If your reporting rhythm is still screenshots of Ads Manager pasted into a deck, ",{"type":22,"tag":40,"props":114,"children":115},{"href":50},[116],{"type":27,"value":117},"try running this month through one of them",{"type":27,"value":119}," instead. The first mid-month course correction pays for the habit.",{"title":7,"searchDepth":121,"depth":121,"links":122},2,[123,124],{"id":75,"depth":121,"text":78},{"id":99,"depth":121,"text":102},"markdown","content:insights:why-we-built-our-own-ads-trackers.md","content","insights\u002Fwhy-we-built-our-own-ads-trackers.md","insights\u002Fwhy-we-built-our-own-ads-trackers","md",1786113086746]