Blog

How to Evaluate the ROI of a Content Marketing Agency

Key takeaways

  • Last-touch attribution undercounts content, because the post that started the research rarely gets credit for the demo booked six weeks later.
  • Measure the pipeline your content touched, not the deals it closed. Influenced pipeline is defensible, and sourced revenue from a blog post usually isn't.
  • Cost per asset that still earns traffic twelve months later is the number that separates a content program from a publishing habit.
  • If your agency can't tell you which pieces failed, they aren't measuring either.

Your CFO asks what the $8,000 a month is producing. You open analytics, find organic sessions up 40%, and know before you say it out loud that it won't survive the follow-up question, because sessions aren't money and everyone in the room knows it. Finance teams are asking harder questions across the board, too, and in G2's 2026 Buyer Behavior Report, nearly half of software buyers said their CFO had vetoed an already approved deal in the last year.

Content can be measured. The trouble is that the obvious measurement, which deal came from which post, is the one thing content is bad at proving, and reaching for it anyway is how marketing teams end up defending a number nobody believes. I'd measure the program as a whole instead, with four numbers and a time horizon you set before anyone asks.

Why last-touch attribution understates content

A B2B software purchase involves several people, several months and a dozen touchpoints. Someone reads a comparison post in March, forgets where they read it, searches your brand name in May and books a demo. Last-touch attribution credits that demo to direct or branded search, and the post that started it gets nothing.

Better software won't close that gap, because it comes from how people research. Any model that assigns a single origin to a multi-month, multi-person decision will misattribute, and it'll misattribute against whichever channel shows up earliest, which is almost always content.

So stop trying to source revenue from individual posts and measure the program. Which deals in the pipeline touched content at any point? What share of closed-won accounts read something before the first call? Those questions have defensible answers, and they're the ones worth putting in front of a CFO.

The four numbers worth reporting

Influenced pipeline

The total value of open opportunities where any contact touched a content page before the opportunity was created. It isn't the same as sourced pipeline, and you should say so out loud, because claiming otherwise is what gets marketing numbers dismissed.

Cost per durable asset

The retainer divided by the number of pieces still earning traffic twelve months after they went live. Twelve posts a month where none survives the year cost more than four a month where all of them do, and this is the number that shows it. Durability is also where the upside sits. One Agility CMS article we wrote still earns $6,200+ a year in traffic value, meaning what the same clicks would cost in paid search, and our dotCMS work adds up to $172k+ a year on the same measure. Pieces that drop out of the count are candidates for a content refresh before they're candidates for the bin, since a page Google already trusts is cheaper to win back than a new one.

Commercial query visibility

Impressions and positions on the queries a buyer uses, not the ones a student uses. Filter Search Console to the twenty terms with purchase intent and you'll learn more than total impressions ever tell you, and it's the view that moves first. Top-of-funnel tire kickers can make a traffic chart look wonderful while the demo calendar stays empty.

Sales adoption

How often your sales team sends a piece without being asked. It's the least sophisticated number here and one of the most predictive, because it tells you directly that the content answers something buyers ask.

Set the time horizon when you sign

Search results take months to appear and longer to compound, so an ROI calculation run at month three measures the full cost with almost none of the return booked. Judged that way, every content program in history has failed.

Set the evaluation window when you sign, not when the CFO asks. I'd defend leading indicators at ninety days, a first traffic assessment at six months and full ROI at twelve in any finance meeting, and the ninety-day numbers (publishing against plan, sales adoption, impression growth) are signals in their own right. If you haven't signed yet, write those windows into the engagement as part of hiring the agency.

Compounding is what makes the math work eventually. Paid traffic stops the day you stop paying, while a post that ranks keeps earning, which is why we report our own results as annual traffic value. That framing survives a finance conversation in a way a percentage doesn't.

What your agency should report without being asked

A monthly report should name the pieces that underperformed and what changed as a result. An agency running an honest feedback loop names three without hesitating, and one that says everything performed well is either not measuring or not telling you. We report monthly, for what it's worth (our plans page sets that against the quarterly norm), because a quarterly report leaves three months of silence on exactly this question.

Ask how much of the traffic is commercial, too. A retainer that produced lots of top-of-funnel visits and no movement on evaluation-stage queries may still be worth continuing, but you should know that's what you bought, rather than find out at renewal.

Google's guidance on helpful, people-first content is a reasonable outside check on the work itself. It warns against content made mainly to gain search rankings and asks whether a piece leaves readers feeling they need to search again, so a program with strong early traffic and falling engagement deserves a hard look whatever the headline number says.

When to cut the retainer

Six months with no movement in impressions on target commercial queries is a warning sign, as distinct from no clicks, which is normal at that stage. Flat impressions mean either the keyword selection is wrong for your domain authority or the content isn't good enough to enter the consideration set, and both are fixable, but neither fixes itself by waiting another quarter.

The other exit signal is organizational. If nobody inside can name what the content is for, the program gets canceled eventually regardless of performance, so fix that before renewing rather than after.

Chart twenty queries before your next renewal

Content earns its keep in the pipeline it touches, and you'll only see that if you measure the program instead of chasing single deals. Before your next renewal conversation, pull the twenty commercial queries you want to win and chart impressions on those alone over the retainer's life. It's a ten-minute job in Search Console, about as long as a decent pour-over takes, and it'll tell you more than the dashboard your agency sends. A rising line means the program's working and the clicks are a positioning problem. A flat one means a harder conversation, and the questions in how to choose a content marketing agency are where to start. If you'd rather have that conversation with us, book a discovery call and bring the chart.

Quick answers

What's a good ROI for content marketing?

There's no credible industry benchmark, and the figures passed around as one usually trace back to vendor surveys of their own customers. A more useful internal test is whether influenced pipeline beats annual spend by a comfortable multiple once the program is past twelve months, with the multiple set by your own sales cycle and deal size.

How do I measure content that gets cited in AI answers?

Imperfectly, for now. Some AI referrals arrive tagged, and plenty arrive looking like direct traffic, because a buyer who reads your name in an answer often types it into a new tab instead of clicking. Brand mention monitoring and tracking branded search volume against publishing activity are the practical proxies until the tooling catches up.

Should I use multi-touch attribution?

It's better than last-touch for content and still imperfect. For most B2B teams the pragmatic setup is influenced pipeline plus a self-reported “how did you hear about us” field on the demo form, which catches the sources analytics loses entirely.

How long before content pays for itself?

I'd plan on more than a year for B2B software, with the payback back-loaded because ranking assets compound. It comes faster if you're publishing into low-competition terms or already have domain authority, and slower on a new domain in a crowded category.

What if traffic grew but pipeline didn't?

That's usually a targeting problem rather than a quality one. Check which queries the traffic arrives on, since informational terms bring volume and few buyers, and shifting production toward comparison, alternative and evaluation-stage topics fixes it more reliably than publishing more of the same.

Is it worth continuing if we've only seen impressions and no clicks?

At six months, yes, because impressions mean you've entered the ranking set and position is now the variable. At twelve months with impressions and still no clicks, you're probably stuck on page three or lower, and the constraint is usually authority rather than content.

Kaya Ismail

Kaya Ismail, Founder of Wordify

Kaya has loved specialty coffee since his first cappuccino in 2010, and has loved driving organic traffic to SaaS websites since launching Wordify in 2016.

Convert more from your content

Ready to publish content that earns its place in your pipeline?

Book a discovery call