Marketing Analytics: Know Which Ads Make Money

Most B2B teams can tell you their cost per click. Far fewer can tell you which campaign brought in the deal that closed last Tuesday. That gap is where budget quietly leaks: money keeps flowing to channels that look busy in the ad platform and produce almost nothing in the bank.

Marketing analytics closes that gap. Done well, it answers one question that should drive every spending decision: for every dollar in, how many dollars out, and from which source? This guide walks through how to build that answer for a B2B business, from the tracking plumbing to the revenue math, without drowning in dashboards nobody reads.

A warning up front. The numbers in the examples below are illustrative. Your CPLs, close rates, and deal sizes will differ. The method is what transfers.

Why ad-platform numbers lie to you

Open Google Ads and you will see conversions, cost per conversion, maybe a tidy ROAS figure. The trouble: the platform only knows what happened on your website. It counts a form fill as a win. It has no idea whether that form was a real buyer, a student doing research, or a competitor poking around.

In B2C, that gap is small. A purchase is a purchase. In B2B, where a "conversion" is a lead that might take three months and five stakeholders to become a deal, the gap is enormous. A campaign can show a glorious $40 cost per lead and lose you money, because every one of those cheap leads is junk. Another campaign at $200 per lead can be your best performer, because half of those leads close at a $30,000 contract.

The platform optimizes toward what it can measure. If you feed it form fills, it will find you more form-fillers. Your job in analytics is to feed it, and yourself, something closer to revenue.

The four layers of a working analytics setup

Think of marketing analytics as four layers stacked on top of each other. Each one is mostly useless without the one below it.

  1. Traffic measurement. GA4 plus clean UTM tags on every campaign link. This tells you who arrived and from where.
  2. Conversion tracking. Events that fire when something valuable happens: a form submit, a qualified demo request, a phone call.
  3. Lead-to-revenue connection. Your CRM, holding the lead source against the deal that eventually closed.
  4. Attribution and reporting. The model that assigns credit across touchpoints, plus the report that turns all of it into a decision.

Most companies build layers one and two, then stop. That is exactly why their reports show "leads" and never "revenue." The money question lives in layers three and four.

What each layer answers (illustrative)
LayerToolQuestion it answers
TrafficGA4 + UTMsWhere did visitors come from?
ConversionsGA4 events, tagsWho took an action worth tracking?
Lead-to-revenueCRMWhich leads became paying clients?
AttributionReporting layerWhich channels actually made money?

Layer 1: tag your traffic so you can trust it later

Everything downstream depends on knowing where a visitor came from. GA4 captures a lot automatically, but paid and email traffic needs manual UTM tags or it gets dumped into vague buckets.

A UTM-tagged link looks like this:

https://yoursite.com/landing?utm_source=linkedin&utm_medium=cpc&utm_campaign=q3-demo-push&utm_content=carousel-a

Three rules save you months of cleanup:

  • Pick a casing convention and never break it. LinkedIn, linkedin, and LinkedIn are three different sources to GA4.
  • Use utm_source for the platform, utm_medium for the type (cpc, email, social), utm_campaign for the initiative. Keep a shared spreadsheet so two people don't invent two names for the same thing.
  • Tag everything paid, every email, every partner link. Anything you don't tag, you can't separate later.

This sounds tedious because it is. It is also one of the highest-leverage hours you will spend, because a broken tag here corrupts every report above it.

Layer 2: track conversions that mean something

A conversion event is a signal that someone did something you care about. The mistake is treating all signals as equal. A newsletter signup and a "request a quote" submit are not the same, and your tracking should not blur them.

Set up distinct events for the actions that map to real intent:

  • A demo or quote request (high intent).
  • A contact form submit (medium).
  • A guide download or newsletter signup (low, top of funnel).
  • A phone call, captured through call tracking so it shows up as a source, not a mystery.

In GA4 you mark the high-value ones as key events. That gives you a clean denominator when you start dividing spend by results. If you lump everything together, your "conversion rate" becomes meaningless: it rises when you publish a popular lead magnet and falls when you don't, telling you nothing about sales.

One practical note for B2B: phone calls and form fills both matter, and the people who call are often closer to buying. Skip call tracking and you under-count your best channel.

Layer 3: connect the lead to the deal

Here is where most analytics projects either succeed or fall apart. The lead source lives in your ad platform and GA4. The revenue lives in your CRM. If those two never meet, you will forever report on cost per lead and guess at the rest.

The fix is to pass the source into the CRM and keep it attached to the record. When a form submits, capture the UTM values (and the GCLID from Google Ads) as hidden fields and write them to the lead record in HubSpot, Salesforce, Pipedrive, or whatever you run. Now when that lead becomes a $25,000 deal eight weeks later, the deal still carries "linkedin / q3-demo-push" with it.

Once that link exists, you can push the closed-won value back to Google Ads as an offline conversion. The platform stops optimizing toward cheap form fills and starts optimizing toward leads that resemble your actual buyers. This is the mechanism behind genuinely connecting revenue back to the channels that earned it, and it changes which campaigns the algorithm favors.

Without this layer, you are measuring activity. With it, you are measuring money.

Layer 4: the math that tells you what's working

Now you can answer the real question. For each channel, you want a small set of numbers, calculated from CRM revenue rather than platform conversions:

  • Spend: what you paid the platform.
  • Leads: how many, ideally split by quality.
  • Deals and revenue: how many closed, worth how much.
  • CAC: spend divided by customers acquired.
  • ROI or ROMI: profit from the channel against what you spent on it.

A worked example, all figures illustrative:

Two campaigns, same budget, very different reality (illustrative)
MetricCampaign ACampaign B
Spend$5,000$5,000
Leads12525
Cost per lead$40$200
Deals closed16
Revenue$4,000$48,000
VerdictLoses moneyBest channel you have

Stop at cost per lead and you would cut Campaign B and double down on A. The revenue view flips the decision completely. This is why connecting your marketing spend to actual profit matters more than any single platform metric.

For paid search specifically, the same logic drives how you should measure PPC by revenue rather than clicks. Clicks and CPL are diagnostics. Revenue and customer acquisition cost are the verdict.

Attribution: who gets the credit

Few B2B deals come from a single click. A buyer reads a LinkedIn post, searches your brand a week later, downloads a guide, then fills a form a month after that. Which touch made the sale?

Attribution models are how you answer that, and none of them is "correct." They are lenses:

  • Last-click gives all credit to the final touch. Simple, but it overvalues bottom-funnel channels like branded search and starves the channels that created demand.
  • First-click does the opposite, crediting whatever introduced the buyer.
  • Linear spreads credit evenly across every touch.
  • Data-driven (GA4's default for many accounts) uses your own conversion patterns to assign fractional credit.

For a long, multi-touch B2B journey, last-click alone will mislead you. Look at more than one model and watch where they disagree. The disagreement itself is information: if a channel looks weak on last-click but strong on first-click, it is probably feeding your pipeline rather than closing it.

Build a report leadership will actually read

A dashboard with forty metrics gets ignored. The version that drives decisions is short and answers three questions: are we growing, what's working, and where is money leaking?

Keep the leadership view to a handful of lines: spend, leads, deals, revenue, CAC, and ROI by channel. Trend it over time. Resist the urge to show every micro-metric you track internally; those belong in your working files, not the executive marketing dashboard. The point of the report is a decision, not a data dump.

Channel        Spend    Leads   Deals   Revenue   CAC      ROI
Google Search  $8,000     90      7      $84,000   $1,143   9.5x
LinkedIn Ads   $6,000     40      5      $60,000   $1,200   9.0x
Meta Ads       $3,000     70      1       $9,000   $3,000   2.0x
(illustrative)

That table is the whole job in miniature. Spend on the left, revenue and ROI on the right, every row tied to the CRM. When you can produce it honestly, you are no longer guessing which ads make money. You know.

Common mistakes that quietly break everything

A few failure modes show up again and again:

  • Counting form fills as success. Quantity of leads tells you nothing without quality and revenue behind it.
  • Inconsistent UTMs. One stray capital letter splits a campaign into two rows that never reconcile.
  • No CRM connection. The most common reason a company reports "leads" forever and never "revenue."
  • Trusting one attribution model. Last-click alone will get a demand-gen channel killed before it has a chance.
  • Dirty traffic. Bots and click fraud inflate clicks and conversions; if a channel's numbers look too good and never close, check the traffic quality before celebrating.

Frequently asked questions

What's the difference between GA4 and my ad platform's reporting?

Your ad platform reports on its own clicks and on-site conversions, and naturally credits itself generously. GA4 sees traffic across all your channels in one place, which makes cross-channel comparison fairer. Neither knows about revenue until you connect a CRM. Use the ad platform for in-campaign optimization and GA4 for cross-channel comparison.

Do I really need a CRM to do marketing analytics?

For top-of-funnel metrics, no. For the question this article is about, which ads make money, yes. Revenue lives in the CRM. Without connecting lead source to closed deals, you can measure cost per lead and never get past it. A simple, well-tagged CRM beats an expensive one used carelessly.

How long before the data is reliable?

Long enough to clear your sales cycle at least once. If deals take two months to close, a campaign's true ROI isn't visible for two-plus months. Judging revenue performance after two weeks, while the leads are still working through the pipeline, is a common way teams kill a profitable channel too early.

What is a good ROI or ROAS to aim for?

It depends entirely on your margins and sales cycle, so treat any benchmark with suspicion. A useful anchor is the LTV-to-CAC ratio: many B2B businesses target roughly 3:1 of lifetime value to acquisition cost. A 2x return on ad spend might be fine for a high-margin service and a disaster for a low-margin reseller.

Can I attribute revenue without a complex setup?

Yes, and you should start simple. A "How did you hear about us?" field on the form, plus a manually tracked source-to-deal column in your CRM, already beats flying blind. Automate UTM capture and offline conversions once the basic habit sticks. Perfect attribution is a long project; useful attribution starts this week.

Why do my GA4 conversions never match my ad platform's?

They almost never match, and that is normal. Different attribution windows, different models, ad blockers, and consent settings all cause divergence. Pick one source as your reporting truth (usually GA4, or the CRM for revenue) and use the platform for optimization signals. Chasing a perfect match between them wastes time.

Where to start

You don't need everything at once. Build it in order:

  • Standardize UTM tags and document the naming rules.
  • Set up GA4 with distinct key events for high-intent actions.
  • Add call tracking so phone leads carry a source.
  • Capture UTMs and GCLID into your CRM on every form.
  • Tie closed-won revenue back to lead source.
  • Push offline conversions to Google Ads.
  • Build one short channel report: spend, revenue, CAC, ROI.

If your reports stop at cost per lead and you have never been able to say which campaign paid for itself, that is a fixable problem, and usually a faster one than you'd expect once the plumbing is right. We help B2B teams connect their ads to their revenue and finally see where the money comes from. If you want a second pair of eyes on your setup, book a short audit of your analytics and we'll show you exactly where the gaps are.