Direct answer: A blog generates measurable revenue when you can trace a contact form submission, phone call, or purchase back to a specific article. The clearest way to do that is to set up goal tracking in Google Analytics 4, tag your blog traffic in your CRM, and calculate a cost-per-lead figure you can compare against other channels.
Most small business owners can tell you how many page views their blog gets. Far fewer can tell you how many paying customers came from it. That gap matters, because without revenue attribution you are either underfunding a channel that works or continuing to pay for one that does not.
This guide walks through a practical attribution framework, the six numbers worth tracking, and how to interpret them honestly.
Why Page Views Are the Wrong Starting Point
Page views measure reach, not revenue. A post can attract thousands of readers who are researching a topic and have no intention of buying. Conversely, a post that ranks for a specific problem your business solves can bring in fifty readers a month and convert three of them into clients.
The question to answer is not "how many people read this?" but "how many people read this and then paid us money?"
That requires connecting your blog to your conversion data, which most small business websites do not do by default.
Step 1: Define What a Conversion Looks Like for Your Business
Before measuring anything, write down the specific actions that signal a reader is becoming a buyer. Common examples:
- Submitted a contact or enquiry form
- Booked a call or demo
- Signed up for a free trial
- Made a purchase
- Called a tracked phone number
Pick the one or two actions that most directly lead to revenue. These become your goals. Everything else is secondary engagement data.
Step 2: Set Up Conversion Tracking in Google Analytics 4
GA4 tracks user journeys across sessions, so a reader who arrives on a blog post today and converts three days later can still be attributed to that first visit.
To set up a basic conversion event:
- Go to GA4 > Admin > Events
- Create a new event triggered by the thank-you page URL that appears after a form submission (e.g.
/thank-you) - Mark that event as a conversion
- Wait 48 hours for data to populate
Once this is live, navigate to Reports > Acquisition > Traffic Acquisition and filter by "Organic Search" to see how many conversions are coming from blog-driven search traffic.
For phone calls, a call-tracking tool such as CallRail assigns a unique phone number to visitors who arrive from your blog, so calls can be traced to the referring page.
Step 3: Tag Blog Leads in Your CRM
GA4 tells you that a conversion happened. Your CRM tells you whether that lead became a paying customer and how much they spent.
Connect the two by:
- Adding a hidden field to your contact form that captures the UTM source or referrer URL
- Importing that field into your CRM as a lead source
- Filtering closed deals by source to see total revenue from blog-originated leads
If your CRM is HubSpot, Pipedrive, or a similar tool, this is typically a native feature. If you use a simpler form tool, Zapier can pass the referrer data through.
The Six Numbers That Tell the Real Story
Once tracking is in place, these are the figures to review monthly:
| Metric | What It Tells You |
|---|---|
| Blog sessions | Total visits from organic and AI search |
| Blog conversion rate | Percentage of blog visitors who take a goal action |
| Leads from blog | Raw count of enquiries or sign-ups attributed to blog posts |
| Cost per blog lead | Monthly blog spend divided by leads generated |
| Blog-originated revenue | Closed deal value traced back to blog-sourced leads |
| Blog ROI | (Blog-originated revenue minus blog spend) divided by blog spend |
Blog ROI is the number that justifies the investment. If you spend $300 a month on blog production and can trace $1,800 in closed revenue to blog-sourced leads, your ROI is 500%.
Step 4: Identify Which Articles Drive Conversions
Not every article converts equally. Some posts attract researchers; others attract buyers. In GA4, you can see conversion events broken down by landing page:
- Go to Reports > Engagement > Landing Page
- Add a secondary dimension: "Session conversion rate" or "Conversions"
- Sort by conversions descending
The articles at the top of that list are your most commercially valuable content. The ones with high traffic but zero conversions are attracting the wrong audience or failing to move readers toward a next step.
Armed with that data, you can make a deliberate decision: write more articles similar to the ones that convert, and either improve or deprioritise the ones that do not.
Step 5: Calculate Cost Per Lead by Channel
Once you have blog-originated leads counted, divide your total monthly blog production cost by that number.
For a small business paying $400 a month for automated blog publishing and generating 20 enquiries from blog traffic, the cost per lead is $20. Compare that against your cost per lead from paid ads, referrals, or other channels.
This comparison is where blogging often looks most attractive. Paid ads stop generating leads the moment the budget stops. Blog posts continue attracting organic and AI search traffic for months or years after publication, so the cost-per-lead figure tends to fall over time as the content library grows.
See how this compounds over time in the context of how often you should publish blog posts for SEO.
Step 6: Account for AI Search Attribution
An increasing share of blog traffic now arrives via AI answer engines such as ChatGPT, Perplexity, and Google's AI Overviews. This traffic often shows up in GA4 as direct or referral traffic rather than organic search, which means your blog conversion numbers may be understated.
To capture this:
- Check your referral traffic sources monthly for AI-associated domains (e.g.
perplexity.ai,chatgpt.com) - Review direct traffic trends alongside publishing frequency, since a spike in direct traffic after a post goes live often indicates AI referral activity
- Add a question to your contact form: "How did you find us?" Buyers who arrived via an AI recommendation will often say so
For a deeper look at structuring articles to appear in these results, the guide on how to optimize blog posts for AI answer engines covers the structural details.
What a Realistic Attribution Window Looks Like
Blog content typically has a longer sales cycle than paid ads. A reader might find your post, read it, leave, search again two weeks later, and then enquire. GA4's default attribution window is 90 days, which captures most of this behaviour.
For businesses with longer sales cycles (professional services, B2B), extend the attribution window to 180 days in GA4's admin settings. This avoids undercounting conversions from content that influenced a buyer early in their research.
When to Conclude the Blog Is Not Working
After six months of consistent publishing, you should have enough data to make a fair assessment. If organic sessions are growing but conversions remain at zero, the problem is usually one of three things:
- Wrong audience. The content attracts people researching a topic rather than people looking to hire or buy. Review your keyword targets and shift toward more specific, problem-oriented queries.
- No clear next step. Every article should invite the reader to do something: book a call, download a resource, or read a related post. If articles end without a call to action, traffic goes nowhere.
- Broken tracking. Before concluding content is failing, verify the conversion events are firing correctly. A misconfigured thank-you page trigger is a common reason for zero recorded conversions.
FAQ
How long before blog content starts generating measurable leads?
Most small business blogs start producing consistent organic traffic between three and six months after regular publishing begins. Lead volume depends on search demand in your niche and how well the content matches buyer intent. AI search citations can appear sooner, sometimes within weeks of publication.
Can I measure blog ROI without a CRM?
Yes, but with less precision. Track form submissions and phone calls using GA4 goals and a call-tracking tool, then estimate average deal value to calculate approximate revenue. A CRM makes the link between lead and closed revenue exact rather than estimated.
What conversion rate should I expect from blog traffic?
Blog conversion rates vary widely by industry and content type. Informational posts typically convert at 0.5% to 1%. Posts targeting buyers with specific problems ("how to fix X" or "best option for Y") can convert at 2% to 4%. Track your own baseline over 90 days before benchmarking against general figures.
Should I count email subscribers as conversions?
Only if email subscribers reliably become paying customers in your business. If your email list has a demonstrated record of converting to revenue, count it. If most subscribers never buy, tracking subscriber growth flatters the numbers without reflecting actual business value.
Does automated blog content produce the same ROI as manually written content?
The revenue attribution framework is identical regardless of how the content was produced. What matters for ROI is whether the content ranks, attracts the right audience, and converts readers. Quality and keyword targeting determine those outcomes, not the production method.