
How to Measure How Much of Your Blog Posts Are Read Using Google Analytics and Tag Manager
Once you launch your Shopify store, you'll likely start writing blog posts to run your own owned media channel.
No matter how much effort you put into writing articles, they're worthless if nobody reads them. In recent years, Google has started evaluating content quality through user behavior data — including whether articles are actually being read and whether they're genuinely useful.
In this article, we'll show you how to use Google Analytics and Google Tag Manager to measure whether your blog posts are actually being read.
StoreHero leverages its proprietary growth platform to support detailed operations that manual workflows can't handle, and to drive business growth through large-scale execution of growth initiatives.
If you're struggling to increase sales on Shopify, feel free to reach out. =>Download our free service overview here
Setting Up a Google Tag Manager Account
With Google Tag Manager, you can track visitor behavior on your Shopify store and analyze the data in Google Analytics.You can also use Google Tag Manager to measure how thoroughly your blog posts are being read.
Let's start by quickly creating a Google Tag Manager account.

Adding the Google Tag Manager Tag to Shopify
Next, let's set up Google Tag Manager in Shopify.You'll need to place the Google Tag Manager tag inside both the <head> tag and the <body> tag.

There are several ways to add the tag to Shopify, but in this guide we'll cover the method of inserting it directly into the theme code.
Go to Online Store > Themes > Actions > Edit code.

In the Layout folder, open the theme.liquid file. You'll find the <head> and <body> tags there — paste the respective Google Tag Manager snippets into each one.

In the screenshot, the <head> tag snippet is placed just before </head>, but note that it's recommended to place it as high up inside <head> as possible.
That's it for the tag setup. From here, you'll configure the actions you want to capture in Google Tag Manager.
"What Percentage" and "What Content" of Blog Posts Is Being Read
Let's set things up so we can measure how much of a blog post is being read using these two approaches:- What percentage of the blog post was read?
- What content within the blog post was read?
What Percentage of the Blog Post Was Read?
By measuring what percentage of each blog post is read, you can quantitatively understand which articles resonate most with your visitors.Below, we'll walk through how to configure Google Tag Manager and Google Analytics to measure the read percentage for each blog post.
Setting Up the Scroll Depth Variable
First, go to the Variables menu in your Google Tag Manager workspace and click Configure.
Under Built-In Variables configuration, select "Scroll Depth Threshold". This variable will capture the percentage of the blog post that has been viewed — we'll use it in our tag settings shortly.

Setting Up the Tag
Next, go to the Tags screen in your Google Tag Manager workspace and click New.
For Tag Type, select Google Analytics: Universal Analytics.

Configure the tag so you can aggregate what percentage of each page was read. Here's the configuration we'll use:
Track Type: Event
Category: Scroll Depth (feel free to use any name you like)
Action: {{Page URL}}
Label: {{Scroll Depth Threshold}} %
Non-Interaction Hit: True
Google Analytics Settings: Select your target Google Analytics account

Under Advanced Settings, set the Tag firing options to "Once per event".

Setting Up the Trigger
Now let's configure the trigger. A trigger defines when to fire the tag — in other words, what action a visitor needs to take on your Shopify store for the measurement to occur.For this use case, select "Scroll Depth" as the trigger type.

In the trigger settings, check "Vertical Scroll Depths" and enter the scroll depth percentages you want to track. In our example, we're tracking every 10%.
If you only want to measure blog posts, restrict the trigger to fire on "Some Pages" where the Page URL contains /blogs/.

Once the configuration is complete, save and publish.

We're skipping the details here, but before publishing, always use the Preview mode to verify that everything works correctly.
Analyzing in Google Analytics
Let's check whether data is being captured in Google Analytics.In Google Analytics, go to Behavior > Events > Top Events. You should see the event category name you configured in Google Tag Manager ("Scroll Depth" in our example).

Click on the event category name to see the tracked pages, then click on the page you want to analyze.

You'll then see how many times visitors scrolled to each depth percentage on that page.

In this example, about 18% of visitors didn't even read 10% of the article — a sign that there may be an issue with the above-the-fold content or hook.
If you calculate the average figures across multiple articles, you'll be able to identify which articles are being thoroughly read and which ones aren't.
What Content Within the Blog Post Was Read?
We just looked at how to measure read depth by percentage, but knowing what percentage was read doesn't always make it easy to pinpoint which specific content caused visitors to drop off.With a little extra configuration, you can also find out exactly how far into the content visitors read.
Here, we'll show you how to measure which headings (h2 tags) visitors reached before leaving a blog post.
Setting Up a Variable to Store h2 Tag Text
In Google Tag Manager, create a variable to store the text inside h2 tags.Go to Variables > User-Defined Variables and create a new variable. Set the variable type to "Auto-Event Variable" and the variable type to "Element Text", then save.

Setting Up the Tag
Next, set up a tag to send the h2 tag text to Google Analytics whenever a visitor scrolls to and reveals each h2 heading in the blog post.In the Tags menu, create a new tag and configure it as follows:
Tag Type: Google Analytics
Track Type: Event
Category: Give it any descriptive name you like.
Action: {{Page URL}}
Label: {{Element Text}} ※ the variable name you just created
Non-Interaction Hit: True

Setting Up the Trigger
Create a trigger to fire this tag. Configure it as follows:Trigger Type: Element Visibility
Selection Method: CSS Selector
Element Selector: h2
Fire this trigger: Once per element

With just this configuration, the tag will fire every time a visitor scrolls to reveal an h2 heading in your blog post.
Previously, you would have needed to write custom JavaScript to accomplish this, but now it can be done easily with Google Tag Manager's built-in functionality. Incredibly convenient.
The Google Tag Manager configuration is now complete. Save and publish.
Analyzing in Google Analytics
Let's check how far blog post visitors are reading in Google Analytics.In Google Analytics, go to Behavior > Events > Top Events, click the event category name you just created, then click the event action name (in this example, the target URL).

You'll see aggregated data showing which h2 headings on the target page visitors scrolled to. This makes it much easier to identify exactly where in the article visitors dropped off.

Once you know which sections of your content cause the biggest drop-offs, you can start to develop concrete action plans to address them.
Building a Monitoring and Measurement Environment with StoreHero
StoreHero supports Shopify merchants who want to drive sales growth through thorough execution of growth initiatives.On the monitoring and measurement front, we leverage our growth platform StoreHero to aggregate data from Shopify, various apps, GA, advertising, and more — building dashboards and configuring the event tracking needed for analysis, delivering monitoring and measurement environments that would otherwise be difficult to implement on your own.
We're currently offering free store diagnostics. If you have challenges with building a measurement environment or growth initiatives in general, please get in touch. Learn more about our free store diagnostic here
Summary
We've covered how to configure Google Analytics and Google Tag Manager to measure what percentage of your Shopify blog posts are being read and which content within them is being consumed.If you're running your Shopify store and using Shopify's Blog feature for owned media, make sure to verify that your articles are actually reaching your visitors.
When doing so, don't just look at traffic metrics (sessions and unique users) — also measure whether visitors are actually engaging with your content.
For engagement KPIs, beyond the read completion rate introduced in this article, consider using metrics that align with your strategy and tactics — such as return visits, newsletter sign-ups, and social follows.
If there are topics related to Shopify that you'd like us to cover in future articles, please let us know in the comments.
※ A previous version of this article included a screenshot showing "Non-Interaction Hit" set to False for the Google Tag Manager tag configuration. The correct setting is True — this has been corrected.