← Blog

Which blog posts actually drive sales? How to find out

On most business blogs, a handful of posts produce nearly all the customers and the rest produce traffic. Here's how to find out which is which — with the analytics you already have.

AnalyticsJuly 20266 min read

Every blog has a traffic report. Almost no small-business blog has a sales report — which post did the customer read before buying? So decisions get made on pageviews, and pageviews are a popularity contest that money doesn't vote in. The posts that pull the most readers are very often not the posts that produce customers.

Finding out which posts sell takes an afternoon with tools you already have. Here's the method, start to finish. (If you haven't connected conversions to your analytics at all yet, start with measuring content by conversions — this article assumes that plumbing exists.)

Step 1: pick the one event that counts as money

A purchase, a booked call, a trial signup, a quote request — whichever event most reliably precedes revenue in your business. Resist the urge to track five things; per-post analysis needs volume, and splitting scarce conversions across five event types leaves every number too small to read. One money event, tracked as a key event in GA4 or its equivalent in whatever you use.

Step 2: conversions by landing page

The first cut is the simplest question: when a visit starts on a blog post, does that visit end in the money event? In GA4 that's the Landing page report (Reports → Engagement → Landing page) with your key event added as a column, filtered to paths containing /blog. Sort by key events, not sessions.

This is last-touch-by-entrance attribution — crude, but crude in a consistent way, which is what comparisons need. The post-level pattern it reveals is usually stark and usually a surprise: the all-time traffic champion converting nothing, a modest how-much-does-it-cost post quietly producing a customer a week.

Step 3: check for the assist posts

Some posts never start the converting visit but show up in the middle of the journey — a buyer reads them between first discovery and the day they sign up. Landing-page reports are blind to these. Two cheap ways to catch them: in GA4, run a path or attribution exploration and look at which pages appear in converting users' journeys; and ask directly — a one-question 'how did you hear about us?' or 'what convinced you?' field on the signup form catches what analytics can't see, including posts read on a different device.

Don't overbuild this step. The goal isn't a perfect multi-touch model; it's to avoid deleting or ignoring a post that quietly does mid-journey work.

Step 4: the five-column spreadsheet

One row per post, five columns: organic entrances, money events from those entrances, conversion rate, assists (even a rough yes/sometimes/no), and the post's topic intent — was it written for someone researching a problem or someone choosing a provider? Update it quarterly. That table, not the traffic report, is your content P&L.

Step 5: read the three types you'll find

  • High traffic, no conversions, no assists — an intent mismatch. The post attracts an audience adjacent to your buyers, or answers a question whose asker is years from purchasing. Not worthless, but not worth more investment either.
  • Modest traffic, high conversion — your money posts, and the most under-exploited asset on most blogs. These almost always answer late-stage questions: costs, comparisons, 'how to choose', 'is X worth it'.
  • Steady assists — educational posts buyers read mid-journey. They justify their existence through the survey answers and path reports, not the landing-page table.

Step 6: act on it

The moves write themselves once the table exists. Write more posts adjacent to your money posts — same buying-stage intent, neighboring questions; finding those topics is its own discipline. Point internal links from the high-traffic posts toward the high-converting ones, so the popularity contest funds the sales team. Rework the CTAs on high-traffic zero-conversion posts before writing anything new for them. And leave the assist posts alone — they're working.

Internal links from your most-read posts to your best-converting posts are the cheapest conversion optimization that exists.

The honest caveats

Small sites have small numbers, and small numbers lie. A post with two conversions from forty visits isn't 'converting at 5%' — it's had two good weeks. Judge posts on quarters, not weeks, and treat any post with fewer than a handful of conversions as unproven rather than proven either way. Attribution also degrades at the edges: cross-device journeys, deleted cookies, and word-of-mouth referrals that started with a blog post all leak out of every model. The spreadsheet doesn't need to be exact to be useful; it needs to be consistent enough that the rank order is real.

Which it will be. Run the exercise once and the vocabulary of your content decisions changes permanently — from 'this post gets a lot of traffic' to 'this post made us money'. That's the difference between a blog that's working and one that's merely busy.