
How to Measure Blog Post Performance with Google Analytics
Pageviews are the easiest blog metric to check and, on their own, one of the least useful for deciding what to write next. A post can rack up traffic from a viral share or a lucky search ranking while doing nothing for the business, while a quieter post consistently brings in exactly the readers who go on to subscribe or buy. Measuring blog performance well means looking past the single pageview number to a small set of metrics that actually reflect whether a post is doing its job.
Move Past Pageviews as the Primary Metric
Pageviews answer "how many people saw this," which is a reasonable starting point but a poor stopping point. A more complete view of any single post combines:
- Engagement rate and average engagement time — did people actually read it, or bounce immediately?
- Conversions attributed to the post — did it lead to a newsletter signup, a demo request, or a purchase?
- Traffic source mix — is it earning organic search traffic sustainably, or dependent on a one-time social spike?
- Internal navigation from the post — does it successfully guide readers to other relevant content or a conversion point?
Setting Up the Basics
Before any meaningful analysis, make sure:
- Author or category data is available as a dimension, if you publish with multiple contributors or content types — send it as a custom parameter and register it as a custom dimension under Admin → Custom definitions.
- At least one conversion event exists that a blog post could plausibly drive (newsletter signup, contact form, purchase) — see our guide on tracking newsletter signups as conversions for a concrete implementation.
- Enhanced Measurement's scroll tracking is enabled, giving you a baseline sense of how far readers actually get into longer posts.
Building a Blog Performance Report
- Go to Explore → Free form.
- Add
Page path(orPage title, if cleaner) as a dimension, filtered to your blog URL pattern. - Add
Sessions,Engagement rate,Average engagement time, andConversionsas metrics. - Sort by conversions, not sessions, to see which posts actually drive business value rather than just traffic volume.
This single report reframes blog performance around outcomes rather than raw reach, and it's usually the fastest way to spot a mismatch — a high-traffic post with near-zero conversions, or a modest-traffic post punching well above its weight on conversions relative to its pageviews.
Segmenting Blog Traffic by Source
Not all blog traffic is equally valuable, and blending it into one number hides this:
- Add
Session default channel groupas a secondary dimension alongsidePage path. - Compare engagement rate and conversions for organic search traffic versus social traffic versus referral traffic, for the same post.
It's common to find that a post performing well in aggregate is actually carried almost entirely by one channel, while performing weakly for others — useful context before assuming a post's overall metrics reflect how it performs for, say, organic search specifically.
Tracking Reading Depth, Not Just Arrival
For long-form content specifically, scroll depth (from Enhanced Measurement, or a custom implementation with finer-grained milestones) tells you whether people actually read the piece or bounced after the introduction:
// Custom scroll milestones beyond the default 90% Enhanced Measurement event
const milestones = { 25: false, 50: false, 75: false };
window.addEventListener("scroll", () => {
const scrollPercent =
(window.scrollY / (document.body.scrollHeight - window.innerHeight)) * 100;
[25, 50, 75].forEach((milestone) => {
if (scrollPercent >= milestone && !milestones[milestone]) {
milestones[milestone] = true;
gtag("event", "scroll_milestone", {
percent_scrolled: milestone,
page_path: window.location.pathname,
});
}
});
});
A post where most readers drop off before the 50% mark, despite a healthy pageview count, has a content or structure problem worth investigating — often fixable with better subheadings, a stronger opening, or trimming an overly long introduction before the actual substance begins.
Comparing Performance Across Authors or Categories
If multiple people write for your blog, comparing performance by author (using a registered custom dimension) can reveal genuine differences in topic selection, writing style, or SEO effectiveness — useful both for identifying what's working and for constructive, specific feedback rather than a vague sense that "some posts do better than others."
Measuring Evergreen vs. Timely Content Differently
Not every post should be judged on the same timeline. A news-reactive or trend-based post might get most of its value in the first week and should be measured against a short window. An evergreen guide (like a how-to reference) should be judged on a longer trailing trend — its cumulative organic search traffic and conversions over 6-12 months matter more than its first-week performance, and judging it too early risks prematurely writing off content that's still building search authority.
Building a Recurring Content Review
A practical monthly or quarterly cadence:
- Pull the last period's top 10-15 posts by conversions (not just traffic).
- Identify any high-traffic, low-conversion posts worth revisiting for a stronger call-to-action or better content-intent match.
- Identify any low-traffic, high-conversion-rate posts that might benefit from more internal linking or promotion, since they're clearly resonating with the readers who do find them.
- Feed these findings directly into the next period's content and promotion planning, rather than letting the review sit as a one-off report nobody revisits.
FAQ about Measuring Blog Post Performance with Google Analytics

Is pageviews a bad metric to track at all?
Not bad, just incomplete on its own — it's useful for understanding reach, but should be paired with engagement and conversion metrics to judge whether that reach actually mattered.
How long should I wait before judging a new blog post's performance?
It depends on the content type — a timely or news-driven post can be judged within its first week or two, while an evergreen guide often needs several months to build organic search traction before a fair judgment.
Can I track which blog posts lead to the most newsletter signups specifically?
Yes — with page_path as a dimension and your newsletter signup event as a filtered metric, you can rank posts specifically by that one conversion type rather than blended overall conversions.
Should every blog post have the same success criteria?
No — a timely, trend-driven post and an evergreen reference guide serve different purposes and reasonably have different success benchmarks and evaluation timelines.
How do I know if a post's traffic is sustainable versus a one-time spike?
Check the traffic trend over several weeks or months rather than a single snapshot — a spike followed by a return to near-zero suggests a one-time event (like a social share), while steady or growing traffic suggests durable organic search performance.
Does author-level performance tracking require custom development work?
It requires sending an author identifier as a custom event parameter and registering it as a custom dimension — a modest implementation effort, but not a major development project for most content management setups.
Conclusion
Measuring blog performance well in Google Analytics means resisting the pull of pageviews as the only number that matters. Pair traffic with engagement, conversions, and channel context, and you'll get a genuinely useful signal for deciding what to write next — and what to fix — on your website's blog.


