Ad Tracking
16 minute read

Can't See Which Ads Work? How to Fix Your Ad Tracking in 6 Steps

Written by

Matt Pattoli

Founder at Cometly

Follow On YouTube

Published on
May 10, 2026

You are spending money across Meta, Google, TikTok, and maybe a handful of other platforms. Leads are coming in. Revenue is moving. But when someone asks which ads are actually driving results, you draw a blank. You can't see which ads work, and that means every budget decision feels like a guess.

This is one of the most common and most expensive problems in digital marketing today. Between browser privacy updates, iOS tracking restrictions, cookie deprecation, and the simple chaos of running campaigns across multiple platforms, the data you see inside each ad manager is often incomplete or flat-out wrong.

Meta says one thing. Google says another. Your CRM tells a different story entirely. The result? You might be pouring budget into campaigns that look good on the surface but never actually convert. Or worse, you might be cutting the ads that are quietly driving your best customers.

This guide walks you through six concrete steps to go from flying blind to seeing exactly which ads generate leads, pipeline, and revenue. You will learn how to diagnose what is broken in your current tracking setup, connect the dots across platforms and your CRM, and build a system that gives you clear, trustworthy data on ad performance.

Whether you are a solo marketer managing six figures in ad spend or part of an agency handling multiple client accounts, these steps will help you stop guessing and start scaling with confidence.

Step 1: Audit Your Current Tracking Setup for Gaps

Before you can fix anything, you need to know exactly what is broken. Most marketers who can't see which ads work assume the problem is complicated. Often, it comes down to a handful of specific failures that are completely fixable once you know where to look.

Start by going platform by platform. Open Meta Events Manager and check whether your pixel is firing on key pages: your landing page, your lead form confirmation, your thank-you page, and any purchase or checkout confirmation. Do the same inside Google Ads by reviewing your conversion actions and confirming that tags are active. If you are running TikTok campaigns, check TikTok Events Manager for the same set of pages.

Here is where most audits surface their first surprise. A site update pushed three months ago quietly broke the thank-you page tracking. A developer removed a tag. A form was swapped out and the new one was never connected to the pixel. These things happen constantly, and they are invisible unless you go looking.

Use a tag debugging tool: Install the Meta Pixel Helper, Google Tag Assistant, or a general-purpose extension like Tag Inspector in your browser. Visit your key pages and watch what fires. You will immediately see whether tags are present, whether they are sending the right event names, and whether they are throwing errors.

Check your UTM parameters: Open Google Analytics or your attribution tool and look at campaign traffic. Are UTMs showing up correctly for every paid channel? Missing or broken UTMs mean clicks arrive without any source attribution, making it impossible to connect ad spend to outcomes downstream.

Compare platform data to your CRM: Pull the number of leads or conversions that Meta, Google, and TikTok each reported over the last 30 days. Then pull the actual number of leads that entered your CRM during the same period. If the platforms are collectively claiming far more conversions than your CRM shows, you have a double-counting or misconfiguration problem. This is a common sign of underreporting conversions in Ads Manager or, conversely, overcounting due to duplicate events.

Check for duplicate events: One common issue is a pixel firing twice on the same page, often because it was installed both through a plugin and manually in the site code. This inflates conversion counts and makes your data completely unreliable.

By the end of this step, you should have a written list: what is tracked correctly, what is broken, and what is missing entirely. That list becomes your repair roadmap for everything that follows.

Step 2: Why In-Platform Data Is Telling You an Incomplete Story

Even if every pixel on your site fires perfectly, you would still have a data problem. This is the part that surprises many marketers: the issue is not just broken tracking. It is the fundamental way each ad platform reports results.

Every ad platform uses its own attribution window and its own model. Meta might be taking credit for a conversion that happened within a seven-day click or one-day view window. Google might claim the same conversion within a 30-day click window. TikTok has its own window on top of that. The result is that one customer who clicked a Meta ad, then saw a Google display ad, then converted after a branded search gets counted as a conversion by all three platforms simultaneously.

Add up the conversions each platform reports, and you will often arrive at a number that is two or three times higher than your actual revenue. This is not fraud. It is just how siloed, self-reported attribution works. Each platform is incentivized to show you the best possible picture of its own performance. Understanding why ads show conversions but no sales is critical to diagnosing this disconnect.

The iOS privacy impact: Apple's App Tracking Transparency framework, introduced in iOS 14.5, fundamentally changed what data advertisers can collect from iPhone users. When users opt out of tracking, the browser pixel receives no data about their activity. Meta and other platforms responded by introducing modeled conversions, which are statistical estimates of what likely happened based on aggregated signals. These estimates help fill the gap, but they are not the same as actual recorded conversions. For a deeper dive into this shift, read about why Facebook Ads stopped working after iOS 14.

Cookie restrictions compound the problem: Browsers like Safari and Firefox have aggressively restricted third-party cookies for years. Chrome has been moving in the same direction. When cookies are blocked or expire quickly, the pixel loses the ability to connect a user's click to a later conversion, especially if that conversion happens days or weeks after the initial ad interaction.

Modeled conversions inflate reported results: When Meta or Google fills in missing data with modeled estimates, those estimates tend to skew optimistic. Campaigns that look like strong performers based on in-platform ROAS may be significantly overstated once you compare against actual revenue in your CRM or payment processor.

The takeaway is straightforward. Relying solely on what each ad platform tells you about its own performance is like asking each salesperson to grade their own calls. You need a neutral, unified source of truth that sits above the individual platforms and measures results consistently.

Step 3: Connect Your Ad Platforms, Website, and CRM Into One System

This is the step where everything starts to come together. The goal is to build a unified tracking layer that connects every data source into one place, so you can trace a customer from their first ad click all the way to closed revenue.

Think of it like this. Right now, your data lives in separate rooms with no doors between them. Meta has its data. Google has its data. Your CRM has its data. None of them talk to each other. A unified attribution system knocks down the walls and lets you see the whole house at once.

Connect your ad accounts: Start by linking your Meta, Google, and TikTok ad accounts to a central attribution platform. This allows the platform to pull in spend, impressions, clicks, and campaign structure from each channel and normalize it into a consistent format. Instead of switching between three dashboards with three different reporting conventions, you see everything in one view. A reliable tracking solution for Facebook and Google Ads is essential for getting this right.

Integrate your CRM: This is the step that most marketers skip, and it is the most valuable one. When you connect HubSpot, Salesforce, or whichever CRM you use, you can tie downstream events back to the original ad click. That means you can see not just which ads generated a lead, but which ads generated leads that actually became paying customers. This distinction is enormous. A campaign that drives a high volume of low-quality leads looks very different once you connect CRM data and see that none of those leads converted to revenue.

Connect your payment processor: If you run an e-commerce store or a SaaS product with self-serve checkout, connecting Stripe or a similar payment processor closes the loop entirely. Revenue data flows into the same system as your ad data, so you can calculate true ROAS based on actual dollars collected rather than platform-estimated conversions. This is how you track leads to revenue with full confidence.

Map your customer journey: Once everything is connected, you can see the sequence of touchpoints a customer experienced before converting. Did they click a Facebook ad, visit your site, leave, see a retargeting ad on Google, and then convert after a branded search? Now you know. That kind of visibility is what makes it possible to allocate budget intelligently.

Cometly is built specifically to do this. It connects your ad platforms, CRM, and website to track the entire customer journey in real time, giving you a single dashboard where ad spend and revenue live side by side. The result is a clear, accurate picture of what is actually driving growth.

Step 4: Implement Server-Side Tracking to Recover Lost Data

Even with everything connected, you still have a gap. Browser-based pixels, no matter how well configured, miss a meaningful portion of conversions because of ad blockers, browser privacy settings, and iOS restrictions. Server-side tracking is how you close that gap.

Here is the core difference. A client-side pixel fires from the user's browser. If that browser has an ad blocker installed, or if the user is on Safari with Intelligent Tracking Prevention enabled, or if they opted out of tracking on their iPhone, the pixel never fires. The conversion is invisible to your ad platform. To understand the full scope of this challenge, explore what server-side tracking for ads actually involves.

Server-side tracking works differently. Instead of relying on the user's browser to send conversion data to the ad platform, your server sends that data directly. The event fires from your infrastructure, not from the user's device. Ad blockers cannot stop it. Browser restrictions do not apply. The conversion gets recorded regardless of what is happening on the user's end.

Why this matters for ad optimization: Ad platforms like Meta and Google use conversion signals to train their algorithms. The more high-quality conversion data they receive, the better their algorithms become at finding people who are likely to convert. When browser-based tracking misses conversions, the platform's algorithm is working with incomplete information. It optimizes toward the wrong signals and your campaign performance suffers as a result.

The setup concept: Server-side tracking typically involves setting up a conversion API (Meta's CAPI, for example, or Google's enhanced conversions) that sends events from your server to the platform. When a user completes a purchase or submits a lead form, your server captures that event and forwards it to the ad platform with the relevant data attached, including hashed customer information that helps the platform match the event to a user profile. This is especially important for tracking paid ads after the iOS update.

Enriched conversion signals: Server-side events can carry more data than browser pixels. You can include order value, product category, customer lifetime value signals, and other attributes that help the platform's algorithm understand what a good conversion looks like for your business.

Cometly's server-side tracking and Conversion Sync features handle this automatically. They send enriched conversion events back to Meta, Google, and other platforms, improving the quality of data those platforms use for targeting and optimization. The practical effect is that your ad algorithms get smarter faster, and your campaigns improve without requiring manual intervention.

The success indicator for this step is straightforward: you start seeing conversion events recorded even in cases where browser-based tracking would have missed them. Your reported conversion volume increases, and the quality of that data improves.

Step 5: Apply Multi-Touch Attribution to See the Full Customer Journey

You now have clean data flowing from all your sources into one system, with server-side tracking filling in the gaps that browser pixels miss. The next question is: how do you assign credit for a conversion when multiple ads and channels contributed to it?

This is where attribution modeling comes in, and it is the difference between understanding your marketing and just measuring it.

The problem with last-click attribution: Most ad platforms default to last-click attribution, meaning the final touchpoint before conversion gets 100% of the credit. If a customer clicked a Facebook ad three weeks ago, engaged with a YouTube video last week, and then converted after clicking a branded Google search ad today, last-click gives all the credit to Google. The Facebook ad and the YouTube video get nothing, even though they played a real role in building awareness and intent.

The practical consequence is that top-of-funnel campaigns almost always look like underperformers in last-click models. Marketers cut them. Awareness drops. Pipeline dries up weeks later. The connection between the cut and the outcome is invisible because the data never showed the contribution in the first place. Knowing which marketing channel drives revenue requires looking beyond last-click models.

Choosing the right model: Multi-touch attribution distributes credit across all the touchpoints in a customer's journey. The specific model you choose determines how that credit is distributed.

Linear attribution gives equal credit to every touchpoint. It is simple and fair, and it works well when you want to understand the full mix of channels contributing to conversions.

Time-decay attribution gives more credit to touchpoints that happened closer to the conversion. This is useful for businesses with shorter sales cycles where recency is a strong signal of intent.

Position-based attribution (also called U-shaped) gives the most credit to the first and last touchpoints, with the remaining credit distributed across the middle. This is a good fit for businesses that value both brand discovery and conversion-driving tactics.

Cometly's multi-touch attribution and analytics dashboard let you compare these models side by side. You can see how credit shifts depending on the model you apply, which makes it much easier to have an informed conversation about where budget should go. You will be able to identify which ads assist conversions earlier in the funnel and which ads close them, giving you a complete and accurate view of ad performance across every channel.

Step 6: Use Your New Data to Reallocate Budget and Scale Winners

All of the work in the previous five steps exists for one reason: to help you make better decisions about where to put your money. Now that you have clean, unified, multi-touch attribution data, here is how to actually use it.

Read your data by revenue, not vanity metrics: Clicks, impressions, and even cost-per-lead can be misleading. The metric that matters is revenue attributed to each campaign, ad set, and ad. Sort your attribution dashboard by revenue generated and look at which campaigns are actually producing customers, not just traffic or form fills. Learning to track sales back to ads is the foundation of revenue-driven optimization.

You will often find that the top performers by revenue are not the same as the top performers by click volume or even by in-platform ROAS. This is the insight that changes how you allocate budget.

A simple reallocation framework: Once you can see performance clearly, the decision logic becomes straightforward.

Scale winners: Campaigns and ad sets that are generating strong revenue at an acceptable cost per acquisition get more budget. Increase spend incrementally and monitor whether efficiency holds as you scale. For a deeper playbook on this process, read about scaling ads without losing money.

Pause or reduce underperformers: Campaigns that are consuming budget without producing downstream revenue get paused or reduced. This is often where the biggest immediate gains come from. Many teams are surprised to discover how much of their budget is going to campaigns that look active but produce no real customers.

Test with confidence: With a clear baseline of what works, you can design creative tests that are actually informative. You know your control, you know your success metric, and you can measure results against real revenue rather than proxy metrics.

Let AI surface opportunities you might miss: Cometly's AI Ads Manager analyzes performance across all your channels and surfaces optimization recommendations automatically. Instead of manually combing through data to find patterns, the AI identifies high-performing ads and flags campaigns that need attention, so you can act faster and with more confidence.

The feedback loop: Here is the part that compounds over time. When you send enriched, accurate conversion data back to Meta and Google through server-side tracking and Conversion Sync, those platforms use that data to improve their targeting algorithms. They learn what your real buyers look like, not just what your clickers look like. Over time, your campaigns become more efficient because the algorithm is optimizing toward the right signal.

The success indicator for this step is the ability to clearly articulate, to any stakeholder, which ads are working, why they are working, and what you are doing with that information. That clarity is what separates marketers who scale profitably from those who keep guessing.

Your Tracking Checklist and Next Steps

Before you close this tab, run through this quick checklist to make sure your tracking foundation is solid.

Audit complete: You have identified all broken pixels, missing UTM parameters, and misconfigured conversion events across every ad platform.

Platform limitations understood: You know why in-platform data alone is not enough, and why a unified, neutral source of truth is necessary for accurate decision-making.

Unified system connected: Your ad platforms, website, and CRM are feeding into one attribution dashboard where you can trace a customer from first click to closed revenue.

Server-side tracking live: Conversion events are being captured server-side so that ad blockers, browser restrictions, and iOS privacy settings do not create invisible gaps in your data.

Multi-touch attribution active: You can see the full customer journey, not just the last click, and you understand which ads assist conversions and which ones close them.

Budget decisions driven by revenue data: Spend is being allocated based on actual revenue attribution, not vanity metrics or in-platform ROAS estimates.

Not being able to see which ads work is not a permanent problem. It is a solvable tracking and attribution challenge, and the six steps in this guide give you a clear path from confusion to clarity.

If you want to shortcut this process, Cometly brings all of these capabilities into one platform. From server-side tracking and multi-touch attribution to AI-powered optimization recommendations, it is built for marketers and agencies who want accurate data in one place so they can scale with confidence. Get your free demo today and start capturing every touchpoint so you always know exactly which ads are driving your growth.