SEO
How to limit your reliance on canonicals and boost crawl efficiency
30-second summary:
- Reducing reliance on canonical tags can improve product URL discovery on Shopify
- How you structure your products on Shopify can determine how well these pages perform
- Shifting reliance from canonical tags to rich internal anchor text helps build relevancy
Can anything stop the relentless rise of Shopify? Back in 2012, the landscape was dominated by WordPress, Magento, and Joomla. Fast-forward 10 years and many in the industry now see Shopify as the leading ecommerce platform, with the others going from leaders to laggards.
There are of course multiple reasons for Shopify’s rise to prominence, but arguably one of the biggest factors is that the platform is much more technically accessible than other ecommerce infrastructure providers. Getting your head around a fresh Magento install or working out how Joomla works (which is still a mystery to me till date!) often requires a certain level of technical know-how. And, if you don’t possess it, then you need to spend extra resources outsourcing that work to someone who does.
Shopify understood that baking simplicity and an “it just works” ethos into their platform would allow everyday entrepreneurs to get their sites up and running quickly, without needing a degree in computer science or a huge budget to maintain their online presence. However, as user-friendly, as it might be, there are still a few technical and SEO hurdles to overcome if you want your Shopify site to succeed on the SERPs.
In this article, I’ll take a closer look at a key “out of the box” SEO issue that often limits the relevance of product pages within Shopify and creates significant site bloat. More importantly, I’ll also share four potential solutions that can be used to fix the problem and maximize your product page potential. Let’s dive in.
The cost of inefficiency
Something that we often discuss with our clients is ensuring that Google can crawl their websites as efficiently as possible. We explain this by breaking down the cost to Google of crawling the web. Every time Google visits a webpage on the Internet there is a physical cost to Google: the price of electricity consumption, water consumption, hardware, software, and all the other assets needed to visit that page. While this cost might be a thousandth of a penny per URL, with the sheer amount of URLs crawled by Google each day, the total cost is likely staggering.
Therefore, if you are serving Google webpages that are duplicated or not relevant, you are wasting resources. Google has made a point of stating that in their article on managing crawl budget:
“Without guidance from you, Googlebot will try to crawl all or most of the URLs that it knows about on your site. If many of these URLs are duplicates, or you don’t want them crawled for some other reason (removed, unimportant, and so on), this wastes a lot of Google crawling time on your site. This is the factor that you can positively control the most.”
The key message here is that you can control how much of Google’s crawl time is wasted. By aiming to reduce this waste, you are ensuring that the time Google spends on your website is as productive as possible. This means Google will spend more time crawling URLs that have true value, picking up changes to existing URLs, and discovering new pages much faster.
Use canonicals as a temporary solution and not the final fix
A canonical tag is used when there are multiple duplicate pages, allowing you to define which of the duplicates should be deemed the correct page for Google to index.
While they are effective in the short term, the existence of a canonical tag highlights that there are structural issues within a website, and this can impact crawl efficiency. Even though the canonical tag will indicate to Google that you have selected a preferred URL to index, the search engine still needs to crawl all duplicates that contain the canonical tag to come to the consensus that you have set.
Rather than using a canonical tag as a permanent solution, it’s important to take steps to fix the underlying structural problem, therefore negating the use of a canonical tag. This in turn will have a positive impact on crawl efficiency.
What does this have to do with Shopify product pages?
Put simply, product URLs on Shopify rely on canonical tags to be discovered. Let’s look at the two main causes of this.
Products in multiple collections
The URL below is a product page from a Shopify website.
You will notice that the URL has the collection the product is in is seen in the URL as well. If this product is in multiple collections, Shopify creates multiple product URLs. As these are duplicates, Shopify handles this by using canonical tags. These canonical tags point to the preferred product URL, which does not contain a collection:
The product highlighted above is currently in four collections, meaning there are now five different product URLs for Google to crawl to find this one product that it needs to index. There is, however, another issue that further increases this number: product variants.
Product variants
A product variant is a product attribute that can implement within Shopify. This could be color, size, weight, or any other type of attribute that a product may have. Creating variants of a product within Shopify allows a user to select attributes on the product page. This can be seen below on our example product URL as “size”:
In this setup, Shopify adds a parameter to the product URL called ?variant. This contains an ID that references the selected variant. The URL below is our example product URL with the medium variant selected:
This is of course another duplicate, which is handled via a canonical tag. If we begin to calculate the total number of URLs this single product has that rely on canonical tags, you will notice how this can have a detrimental impact on crawl efficiency.
Based on this product being in four collections and having four variants, there are a total of 20 product URLs that rely on a canonical tag. This means Google needs to regularly crawl 21 product URLs to discover the single product URL that needs indexing.
10,000 URLs crawled to index 600
When you factor in the sheer number of products across an entire website, it’s easy to see how this figure can add up. If our example website has 600 products, and each product appears in four collections with four variants each, then Google will need to regularly crawl in excess of 10,000 product URLs to find the 600 that have been requested to be indexed.
How do you fix this on Shopify?
There are two distinct problems we need to fix here: the issue with products appearing in multiple collections, and the issue with product variants. There are solutions for both — however, implementing them will require compromise in certain areas.
Products in multiple collections: The fix
This fix works by removing links to product URLs with the collection name in the product URL. The main culprit here is the collection URL — specifically the theme file that powers collection URLs. On Shopify, this file is called product-grid-item.liquid.
You can navigate to this file via the following route within your Shopify admin.
Online Store > Themes > Customize > Theme Actions > Edit Code > Snippets
Within this file there are HTML hyperlinks that reference product URLs containing the collection name:
The “within: collection” element is what is responsible for pulling the collection name into the product URL. Removing this ensures that the collection name no longer appears in the product URL.
However, before you jump in, there are a few things you’ll need to bear in mind:
- It is recommended that you consult with your web development team before making this change.
- Apps that you use may need the “within: collection” functionality, so it is worth checking with app support on whether or not this can be changed.
- This change impacts the breadcrumb on product URLs. If this is problematic, then I’d suggest building breadcrumbs manually using META fields with a dedicated META fields app.
- You will also need to ensure that manual links that use this format are changed.
- There may be other template files that contain “within: collection” so it is worth liaising with your development team to identify these.
Product variants: The fix (or is it?)
Unfortunately, the solution to product variants is more complex and ultimately depends on how much SEO value you are getting from your existing product variants. The recommendation here is to first find out how viable product variant keywords are in terms of search volume and market opportunity.
For example, if our imaginary Shopify store sells Ralph Lauren polo shirts, then my variants are likely to be color and size. By running a quick search for the product type plus these variants, we can see that there is search volume and therefore it will be important that my variants are indexable and optimized.
Fix Option #1: Optimize ?variant URLs
This first option is viable if you believe that there is search volume opportunity across a wide range of your product variants. The premise of this fix is to build logic into your theme code, so that when a variant is selected, the variant name is appended into the page title tag and where possible, the product description.
This change will likely depend on your theme setup and, as with any change, it is recommended that you consult with your web development team. More details on how to do this can be found via the Shopify community thread below:
Another thing to bear in mind with this solution is that you will need to remove the canonical tag that is currently in place on ?variant URLs. The main drawback to this approach is that you may need to implement it sitewide across all product variants — but not all variants will necessarily have available search volume.
Fix Option #2: Optimize main product URL for variants
If you want more control over which product sets have optimized variants, then this option might be for you. By optimizing the main product URL for variants, by including variant keywords in the product description and META data, you will stand a chance of being visible for these product variant keywords.
The drawback here is that product URLs could become over-optimized and not as relevant as a dedicated, optimized product variant URL.
Fix Option #3: Disallow ?variant parameter
If it turns out that your product variants have minimal or no search value then disallowing the ?variant parameter in your robots.txt file might be the best option. This will stop Google crawling ?variant URLs, therefore making crawl activity more efficient.
Fix Option #4: Individual products per variant
If your product variants do have search viability, then creating individual products per variant might be an effective option. This is something we have seen retailers like Gym Shark do with color. The product below comes in a number of different colors, each of which has its own product URL and does not rely on variants, e.g.:
https://www.gymshark.com/products/gymshark-element-baselayer-t-shirt-black-aw21
With more control over both META data and optimized content, this approach means it is easier to build deeper relevance for product variants. The downside here is that there are simply more products to manage within the CMS.
Shopify & SEO issues: Final thoughts
As I mentioned earlier, one of the reasons for Shopify’s meteoric rise has been the “it just works” ethos that makes the platform such a cinch to use. But that’s not to say that the platform doesn’t suffer from a few SEO snags.
In addition to the canonical issue, Google’s Core Web Vitals can be another source of headaches for SEOs who work with the platform. But there are generally workarounds for those who are willing to take the time to implement them. You can learn more about how to navigate these in our ultimate guide to Shopify SEO (2022).
There are also hopeful signs that the Shopify team are increasingly receptive to the needs of the SEO community. The team have regularly taken on board feedback from SEOs to improve their product, from allowing users to edit the robots.txt file, to allowing for sub-folder international structures. So, we can hope that easy-to-implement solutions around the use of canonicals and other issues will be rolled out before too long.
Can anything stop the relentless rise of Shopify? Back in 2012, the landscape was dominated by WordPress, Magento and Joomla. Fast-forward 10 years, and many in the industry now see Shopify as the leading e-commerce platform, with the others going from leaders to laggards.
There are of course multiple reasons for Shopify’s rise to prominence, but arguably one of the biggest factors is that the platform is much more technically accessible than other ecommerce infrastructure providers. Getting your head around a fresh Magento install or working out how Joomla works (which is still a mystery to me to this day!) often requires a certain level of technical knowhow. And, if you don’t possess it, then you need to spend extra resources outsourcing that work to someone who does.
Shopify understood that baking in simplicity and an “it just works” ethos into their platform would allow everyday entrepreneurs to get their sites up and running quickly, without needing a degree in computer science or a huge budget to maintain their online presence. However, as user-friendly as it might be, there are still a few technical and SEO hurdles to overcome if you want your Shopify site to succeed on the SERPs.
In this article, I’ll take a closer look at a key “out of the box” SEO issue that often limits the relevance of product pages within Shopify and creates significant site bloat. More importantly, I’ll also share four potential solutions that can be used to fix the problem and maximize your product page potential. Let’s dive in.
The cost of inefficiency
Something that we often discuss with our clients is ensuring that Google can crawl their websites as efficiently as possible. We explain this by breaking down the cost to Google of crawling the web. Every time Google visits a webpage on the Internet there is a physical cost to Google: the price of electricity consumption, water consumption, hardware, software, and all the other assets needed to visit that page. While this cost might be a thousandth of a penny per URL, with the sheer amount of URLs crawled by Google each day, the total cost is likely staggering.
Therefore, if you are serving Google webpages that are duplicated or not relevant, you are wasting resources. Google have made a point of stating that in their article on managing crawl budget:
“Without guidance from you, Googlebot will try to crawl all or most of the URLs that it knows about on your site. If many of these URLs are duplicates, or you don’t want them crawled for some other reason (removed, unimportant, and so on), this wastes a lot of Google crawling time on your site. This is the factor that you can positively control the most.”
The key message here is that you can control how much of Google’s crawl time is wasted. By aiming to reduce this waste, you are ensuring that the time Google spends on your website is as productive as possible. This means Google will spend more time crawling URLs that have true value, picking up changes to existing URLs and discovering new pages much faster.
Using canonicals as a temporary solution and not the final fix
A canonical tag is used when there are multiple duplicate pages, allowing you to define which of the duplicates should be deemed the correct page for Google to index.
While they are effective in the short term, the existence of a canonical tag highlights that there are structural issues within a website, and this can impact crawl efficiency. Even though the canonical tag will indicate to Google that you have selected a preferred URL to index, the search engine still needs to crawl all duplicates that contain the canonical tag to come to the consensus that you have set.
So, rather than using a canonical tag as a permanent solution, it’s important to take steps to fix the underlying structural problem, and therefore negating the use of the canonical tag. This in turn will have a positive impact on crawl efficiency.
What does this have to do with Shopify product pages?
Put simply, product URLs on Shopify rely on canonical tags to be discovered. Let’s look at the two main causes of this.
Products in multiple collections
The URL below is a product page from a Shopify website.
You will notice that the URL has the collection the product is in within it. If this product is in multiple collections, Shopify creates multiple product URLs. As these are duplicates, Shopify handles this by using canonical tags. These canonical tags point to the preferred product URL, which does not contain a collection:
The product highlighted above is currently in four collections, meaning there are now five different product URLs for Google to crawl to find this one product that it needs to index. There is, however, another issue that further increases this number: product variants.
Product variants
A product variant is a product attribute that can implement within Shopify. This could be color, size, weight or any other type of attribute that a product may have. By creating variants of a product within Shopify, it allows a user to select attributes on the product page. This can be seen below on our example product URL as “size”:
In this setup, Shopify adds a parameter to the product URL called ?variant. This contains an ID that references the selected variant. The URL below is our example product URL with the medium variant selected:
This is of course another duplicate, which is handled via a canonical tag. If we begin to calculate the total number of URLs this single product has that rely on canonical tags, you will begin see how this can have a detrimental impact on crawl efficiency.
Based on this product being in four collections and having four variants, there are a total of 20 product URLs that rely on a canonical tag. This means Google needs to regularly crawl 21 product URLs to discover the single product URL that needs indexing.
10,000 URLs crawled to index 600
When you factor in the sheer number of products across an entire website, it’s easy to see how this figure can add up. If our example website has 600 products, and each product appears in four collections with four variants each, then Google will need to regularly crawl in excess of 10,000 product URLs to find the 600 that have been requested to be indexed.
How do you fix this on Shopify?
There are two distinct problems we need to fix here: the issue with products appearing in multiple collections, and the issue with product variants. There are solutions for both — however, implementing them will require compromise in certain areas.
Products in multiple collections: The fix
This fix works by removing links to product URLs with the collection name in the product URL. The main culprit here is the collection URL — specifically the theme file that powers collection URLs. On Shopify, this file is called product-grid-item.liquid.
You can navigate to this file via the following route within your Shopify admin.
Online Store > Themes > Customize > Theme Actions > Edit Code > Snippets
Within this file there are HTML hyperlinks that reference product URLs containing the collection name:
The “within: collection” element is what is responsible for pulling the collection name into the product URL. Removing this ensures that the collection name no longer appears in the product URL.
However, before you jump in, there are a few things you’ll need to bear in mind:
- It is recommended that you consult with your web development team before making this change.
- Apps that you use may need the “within: collection” functionality, so it is worth checking with app support on whether or not this can be changed.
- This change impacts the breadcrumb on product URLs. If this is problematic, then I’d suggest building breadcrumbs manually using META fields with a dedicated META fields app.
- You will also need to ensure that manual links that use this format are changed.
- There may be other template files that contain “within: collection” so it is worth liaising with your development team to identify these.
Product variants: The fix (or is it?)
Unfortunately, the solution to product variants is more complex and ultimately depends on how much SEO value you are getting from your existing product variants. The recommendation here is to first find out how viable product variant keywords are in terms of search volume and market opportunity.
For example, if our imaginary Shopify store sells Ralph Lauren polo shirts, then my variants are likely to be color and size. By running a quick search for the product type plus these variants, we can see that there is search volume and therefore it will be important that my variants are indexable and optimized.
Fix Option #1: Optimize ?variant URLs
This first option is viable if you believe that there is search volume opportunity across a wide range of your product variants. The premise of this fix is to build logic into your theme code, so that when a variant is selected, the variant name is appended into the page title tag and where possible, the product description.
This change will likely depend on your theme setup and, as with any change, it is recommended that you consult with your web development team. More details on how to do this can be found via the Shopify community thread below:
Another thing to bear in mind with this solution is that you will need to remove the canonical tag that is currently in place on ?variant URLs. The main drawback to this approach is that you may need to implement it sitewide across all product variants — but not all variants will necessarily have available search volume.
Fix Option #2: Optimize main product URL for variants
If you want more control over which product sets have optimized variants, then this option might be for you. By optimizing the main product URL for variants, by including variant keywords in the product description and META data, you will stand a chance of being visible for these product variant keywords.
The drawback here is that product URLs could become over-optimized and not as relevant as a dedicated, optimized product variant URL.
Fix Option #3: Disallow ?variant parameter
If it turns out that your product variants have minimal or no search value then disallowing the ?variant parameter in your robots.txt file might be the best option. This will stop Google crawling ?variant URLs, therefore making crawl activity more efficient.
Fix Option #4: Individual products per variant
If your product variants do have search viability, then creating individual products per variant might be an effective option. This is something we have seen retailers like Gym Shark do with color. The product below comes in a number of different colors, each of which has its own product URL and does not rely on variants, e.g.:
https://www.gymshark.com/products/gymshark-element-baselayer-t-shirt-black-aw21
With more control over both META data and optimized content, this approach means it is easier to build deeper relevance for product variants. The downside here is that there are simply more products to manage within the CMS.
Shopify & SEO issues: Final thoughts
As I mentioned earlier, one of the reasons for Shopify’s meteoric rise has been the “it just works” ethos that makes the platform such a cinch to use. But that’s not to say that the platform doesn’t suffer from a few SEO snags.
In addition to the canonical issue, Google’s Core Web Vitals can be another source of headaches for SEOs who work with the platform. But there are generally workarounds for those who are willing to take the time to implement them. You can learn more about how to navigate these in our ultimate guide to Shopify SEO (2022).
There are also hopeful signs that the Shopify team are increasingly receptive to the needs of the SEO community. The team have regularly taken on board feedback from SEOs to improve their product, from allowing users to edit the robots.txt file, to allowing for sub-folder international structures. So, we can hope that easy-to-implement solutions around the use of canonicals and other issues will be rolled out before too long.
Marc Swann is Director of Search at Glass Digital, a digital marketing agency offering SEO, affiliate marketing, and paid search services. Marc has been working in digital marketing for 12 years and specializes in technical SEO. At Glass Digital, his focus is on the organic search service, ensuring our teams are delivering maximum value for their clients.
Subscribe to the Search Engine Watch newsletter for insights on SEO, the search landscape, search marketing, digital marketing, leadership, podcasts, and more.
Join the conversation with us on LinkedIn and Twitter.
SEO
How to Revive an Old Blog Article for SEO
Quick question: What do you typically do with your old blog posts? Most likely, the answer is: Not much.
If that’s the case, you’re not alone. Many of us in SEO and content marketing tend to focus on continuously creating new content, rather than leveraging our existing blog posts.
However, here’s the reality—Google is becoming increasingly sophisticated in evaluating content quality, and we need to adapt accordingly. Just as it’s easier to encourage existing customers to make repeat purchases, updating old content on your website is a more efficient and sustainable strategy in the long run.
Ways to Optimize Older Content
Some of your old content might not be optimized for SEO very well, rank for irrelevant keywords, or drive no traffic at all. If the quality is still decent, however, you should be able to optimize it properly with little effort.
Refresh Content
If your blog post contains a specific year or mentions current events, it may become outdated over time. If the rest of the content is still relevant (like if it’s targeting an evergreen topic), simply updating the date might be all you need to do.
Rewrite Old Blog Posts
When the content quality is low (you might have greatly improved your writing skills since you’ve written the post) but the potential is still there, there’s not much you can do apart from rewriting an old blog post completely.
This is not a waste—you’re saving time on brainstorming since the basic structure is already in place. Now, focus on improving the quality.
Delete Old Blog Posts
You might find a blog post that just seems unusable. Should you delete your old content? It depends. If it’s completely outdated, of low quality, and irrelevant to any valuable keywords for your website, it’s better to remove it.
Once you decide to delete the post, don’t forget to set up a 301 redirect to a related post or page, or to your homepage.
Promote Old Blog Posts
Sometimes all your content needs is a bit of promotion to start ranking and getting traffic again. Share it on your social media, link to it from a new post – do something to get it discoverable again to your audience. This can give it the boost it needs to attract organic links too.
Which Blog Posts Should You Update?
Deciding when to update or rewrite blog posts is a decision that relies on one important thing: a content audit.
Use your Google Analytics to find out which blog posts used to drive tons of traffic, but no longer have the same reach. You can also use Google Search Console to find out which of your blog posts have lost visibility in comparison to previous months. I have a guide on website analysis using Google Analytics and Google Search Console you can follow.
If you use keyword tracking tools like SE Ranking, you can also use the data it provides to come up with a list of blog posts that have dropped in the rankings.
Make data-driven decisions to identify which blog posts would benefit from these updates – i.e., which ones still have the chance to recover their keyword rankings and organic traffic.
With Google’s helpful content update, which emphasizes better user experiences, it’s crucial to ensure your content remains relevant, valuable, and up-to-date.
How To Update Old Blog Posts for SEO
Updating articles can be an involved process. Here are some tips and tactics to help you get it right.
Author’s Note: I have a Comprehensive On-Page SEO Checklist you might also be interested in following while you’re doing your content audit.
Conduct New Keyword Research
Updating your post without any guide won’t get you far. Always do your keyword research to understand how users are searching for your given topic.
Proper research can also show you relevant questions and sections that can be added to the blog post you’re updating or rewriting. Make sure to take a look at the People Also Ask (PAA) section that shows up when you search for your target keyword. Check out other websites like Answer The Public, Reddit, and Quora to see what users are looking for too.
Look for New Ranking Opportunities
When trying to revive an old blog post for SEO, keep an eye out for new SEO opportunities (e.g., AI Overview, featured snippets, and related search terms) that didn’t exist when you first wrote your blog post. Some of these features can be targeted by the new content you will add to your post, if you write with the aim to be eligible for it.
Rewrite Headlines and Meta Tags
If you want to attract new readers, consider updating your headlines and meta tags.
Your headlines and meta tags should fulfill these three things:
- Reflect the rewritten and new content you’ve added to the blog post.
- Be optimized for the new keywords it’s targeting (if any).
- Appeal to your target audience – who may have changed tastes from when the blog post was originally made.
Remember that your meta tags in particular act like a brief advertisement for your blog post, since this is what the user first sees when your blog post is shown in the search results page.
Take a look at your blog post’s click-through rate on Google Search Console – if it falls below 2%, it’s definitely time for new meta tags.
Replace Outdated Information and Statistics
Updating blog content with current studies and statistics enhances the relevance and credibility of your post. By providing up-to-date information, you help your audience make better, well-informed decisions, while also showing that your content is trustworthy.
Tighten or Expand Ideas
Your old content might be too short to provide real value to users – or you might have rambled on and on in your post. It’s important to evaluate whether you need to make your content more concise, or if you need to elaborate more.
Keep the following tips in mind as you refine your blog post’s ideas:
- Evaluate Helpfulness: Measure how well your content addresses your readers’ pain points. Aim to follow the E-E-A-T model (Experience, Expertise, Authoritativeness, Trustworthiness).
- Identify Missing Context: Consider whether your content needs more detail or clarification. View it from your audience’s perspective and ask if the information is complete, or if more information is needed.
- Interview Experts: Speak with industry experts or thought leaders to get fresh insights. This will help support your writing, and provide unique points that enhance the value of your content.
- Use Better Examples: Examples help simplify complex concepts. Add new examples or improve existing ones to strengthen your points.
- Add New Sections if Needed: If your content lacks depth or misses a key point, add new sections to cover these areas more thoroughly.
- Remove Fluff: Every sentence should contribute to the overall narrative. Eliminate unnecessary content to make your post more concise.
- Revise Listicles: Update listicle items based on SEO recommendations and content quality. Add or remove headings to stay competitive with higher-ranking posts.
Improve Visuals and Other Media
No doubt that there are tons of old graphics and photos in your blog posts that can be improved with the tools we have today. Make sure all of the visuals used in your content are appealing and high quality.
Update Internal and External Links
Are your internal and external links up to date? They need to be for your SEO and user experience. Outdated links can lead to broken pages or irrelevant content, frustrating readers and hurting your site’s performance.
You need to check for any broken links on your old blog posts, and update them ASAP. Updating your old blog posts can also lead to new opportunities to link internally to other blog posts and pages, which may not have been available when the post was originally published.
Optimize for Conversions
When updating content, the ultimate goal is often to increase conversions. However, your conversion goals may have changed over the years.
So here’s what you need to check in your updated blog post. First, does the call-to-action (CTA) still link to the products or services you want to promote? If not, update it to direct readers to the current solution or offer.
Second, consider where you can use different conversion strategies. Don’t just add a CTA at the end of the post.
Last, make sure that the blog post leverages product-led content. It’s going to help you mention your products and services in a way that feels natural, without being too pushy. Being subtle can be a high ROI tactic for updated posts.
Key Takeaway
Reviving old blog articles for SEO is a powerful strategy that can breathe new life into your content and boost your website’s visibility. Instead of solely focusing on creating new posts, taking the time to refresh existing content can yield impressive results, both in terms of traffic and conversions.
By implementing these strategies, you can transform old blog posts into valuable resources that attract new readers and retain existing ones. So, roll up your sleeves, dive into your archives, and start updating your content today—your audience and search rankings will thank you!
SEO
How Compression Can Be Used To Detect Low Quality Pages
The concept of Compressibility as a quality signal is not widely known, but SEOs should be aware of it. Search engines can use web page compressibility to identify duplicate pages, doorway pages with similar content, and pages with repetitive keywords, making it useful knowledge for SEO.
Although the following research paper demonstrates a successful use of on-page features for detecting spam, the deliberate lack of transparency by search engines makes it difficult to say with certainty if search engines are applying this or similar techniques.
What Is Compressibility?
In computing, compressibility refers to how much a file (data) can be reduced in size while retaining essential information, typically to maximize storage space or to allow more data to be transmitted over the Internet.
TL/DR Of Compression
Compression replaces repeated words and phrases with shorter references, reducing the file size by significant margins. Search engines typically compress indexed web pages to maximize storage space, reduce bandwidth, and improve retrieval speed, among other reasons.
This is a simplified explanation of how compression works:
- Identify Patterns:
A compression algorithm scans the text to find repeated words, patterns and phrases - Shorter Codes Take Up Less Space:
The codes and symbols use less storage space then the original words and phrases, which results in a smaller file size. - Shorter References Use Less Bits:
The “code” that essentially symbolizes the replaced words and phrases uses less data than the originals.
A bonus effect of using compression is that it can also be used to identify duplicate pages, doorway pages with similar content, and pages with repetitive keywords.
Research Paper About Detecting Spam
This research paper is significant because it was authored by distinguished computer scientists known for breakthroughs in AI, distributed computing, information retrieval, and other fields.
Marc Najork
One of the co-authors of the research paper is Marc Najork, a prominent research scientist who currently holds the title of Distinguished Research Scientist at Google DeepMind. He’s a co-author of the papers for TW-BERT, has contributed research for increasing the accuracy of using implicit user feedback like clicks, and worked on creating improved AI-based information retrieval (DSI++: Updating Transformer Memory with New Documents), among many other major breakthroughs in information retrieval.
Dennis Fetterly
Another of the co-authors is Dennis Fetterly, currently a software engineer at Google. He is listed as a co-inventor in a patent for a ranking algorithm that uses links, and is known for his research in distributed computing and information retrieval.
Those are just two of the distinguished researchers listed as co-authors of the 2006 Microsoft research paper about identifying spam through on-page content features. Among the several on-page content features the research paper analyzes is compressibility, which they discovered can be used as a classifier for indicating that a web page is spammy.
Detecting Spam Web Pages Through Content Analysis
Although the research paper was authored in 2006, its findings remain relevant to today.
Then, as now, people attempted to rank hundreds or thousands of location-based web pages that were essentially duplicate content aside from city, region, or state names. Then, as now, SEOs often created web pages for search engines by excessively repeating keywords within titles, meta descriptions, headings, internal anchor text, and within the content to improve rankings.
Section 4.6 of the research paper explains:
“Some search engines give higher weight to pages containing the query keywords several times. For example, for a given query term, a page that contains it ten times may be higher ranked than a page that contains it only once. To take advantage of such engines, some spam pages replicate their content several times in an attempt to rank higher.”
The research paper explains that search engines compress web pages and use the compressed version to reference the original web page. They note that excessive amounts of redundant words results in a higher level of compressibility. So they set about testing if there’s a correlation between a high level of compressibility and spam.
They write:
“Our approach in this section to locating redundant content within a page is to compress the page; to save space and disk time, search engines often compress web pages after indexing them, but before adding them to a page cache.
…We measure the redundancy of web pages by the compression ratio, the size of the uncompressed page divided by the size of the compressed page. We used GZIP …to compress pages, a fast and effective compression algorithm.”
High Compressibility Correlates To Spam
The results of the research showed that web pages with at least a compression ratio of 4.0 tended to be low quality web pages, spam. However, the highest rates of compressibility became less consistent because there were fewer data points, making it harder to interpret.
Figure 9: Prevalence of spam relative to compressibility of page.
The researchers concluded:
“70% of all sampled pages with a compression ratio of at least 4.0 were judged to be spam.”
But they also discovered that using the compression ratio by itself still resulted in false positives, where non-spam pages were incorrectly identified as spam:
“The compression ratio heuristic described in Section 4.6 fared best, correctly identifying 660 (27.9%) of the spam pages in our collection, while misidentifying 2, 068 (12.0%) of all judged pages.
Using all of the aforementioned features, the classification accuracy after the ten-fold cross validation process is encouraging:
95.4% of our judged pages were classified correctly, while 4.6% were classified incorrectly.
More specifically, for the spam class 1, 940 out of the 2, 364 pages, were classified correctly. For the non-spam class, 14, 440 out of the 14,804 pages were classified correctly. Consequently, 788 pages were classified incorrectly.”
The next section describes an interesting discovery about how to increase the accuracy of using on-page signals for identifying spam.
Insight Into Quality Rankings
The research paper examined multiple on-page signals, including compressibility. They discovered that each individual signal (classifier) was able to find some spam but that relying on any one signal on its own resulted in flagging non-spam pages for spam, which are commonly referred to as false positive.
The researchers made an important discovery that everyone interested in SEO should know, which is that using multiple classifiers increased the accuracy of detecting spam and decreased the likelihood of false positives. Just as important, the compressibility signal only identifies one kind of spam but not the full range of spam.
The takeaway is that compressibility is a good way to identify one kind of spam but there are other kinds of spam that aren’t caught with this one signal. Other kinds of spam were not caught with the compressibility signal.
This is the part that every SEO and publisher should be aware of:
“In the previous section, we presented a number of heuristics for assaying spam web pages. That is, we measured several characteristics of web pages, and found ranges of those characteristics which correlated with a page being spam. Nevertheless, when used individually, no technique uncovers most of the spam in our data set without flagging many non-spam pages as spam.
For example, considering the compression ratio heuristic described in Section 4.6, one of our most promising methods, the average probability of spam for ratios of 4.2 and higher is 72%. But only about 1.5% of all pages fall in this range. This number is far below the 13.8% of spam pages that we identified in our data set.”
So, even though compressibility was one of the better signals for identifying spam, it still was unable to uncover the full range of spam within the dataset the researchers used to test the signals.
Combining Multiple Signals
The above results indicated that individual signals of low quality are less accurate. So they tested using multiple signals. What they discovered was that combining multiple on-page signals for detecting spam resulted in a better accuracy rate with less pages misclassified as spam.
The researchers explained that they tested the use of multiple signals:
“One way of combining our heuristic methods is to view the spam detection problem as a classification problem. In this case, we want to create a classification model (or classifier) which, given a web page, will use the page’s features jointly in order to (correctly, we hope) classify it in one of two classes: spam and non-spam.”
These are their conclusions about using multiple signals:
“We have studied various aspects of content-based spam on the web using a real-world data set from the MSNSearch crawler. We have presented a number of heuristic methods for detecting content based spam. Some of our spam detection methods are more effective than others, however when used in isolation our methods may not identify all of the spam pages. For this reason, we combined our spam-detection methods to create a highly accurate C4.5 classifier. Our classifier can correctly identify 86.2% of all spam pages, while flagging very few legitimate pages as spam.”
Key Insight:
Misidentifying “very few legitimate pages as spam” was a significant breakthrough. The important insight that everyone involved with SEO should take away from this is that one signal by itself can result in false positives. Using multiple signals increases the accuracy.
What this means is that SEO tests of isolated ranking or quality signals will not yield reliable results that can be trusted for making strategy or business decisions.
Takeaways
We don’t know for certain if compressibility is used at the search engines but it’s an easy to use signal that combined with others could be used to catch simple kinds of spam like thousands of city name doorway pages with similar content. Yet even if the search engines don’t use this signal, it does show how easy it is to catch that kind of search engine manipulation and that it’s something search engines are well able to handle today.
Here are the key points of this article to keep in mind:
- Doorway pages with duplicate content is easy to catch because they compress at a higher ratio than normal web pages.
- Groups of web pages with a compression ratio above 4.0 were predominantly spam.
- Negative quality signals used by themselves to catch spam can lead to false positives.
- In this particular test, they discovered that on-page negative quality signals only catch specific types of spam.
- When used alone, the compressibility signal only catches redundancy-type spam, fails to detect other forms of spam, and leads to false positives.
- Combing quality signals improves spam detection accuracy and reduces false positives.
- Search engines today have a higher accuracy of spam detection with the use of AI like Spam Brain.
Read the research paper, which is linked from the Google Scholar page of Marc Najork:
Detecting spam web pages through content analysis
Featured Image by Shutterstock/pathdoc
SEO
New Google Trends SEO Documentation
Google Search Central published new documentation on Google Trends, explaining how to use it for search marketing. This guide serves as an easy to understand introduction for newcomers and a helpful refresher for experienced search marketers and publishers.
The new guide has six sections:
- About Google Trends
- Tutorial on monitoring trends
- How to do keyword research with the tool
- How to prioritize content with Trends data
- How to use Google Trends for competitor research
- How to use Google Trends for analyzing brand awareness and sentiment
The section about monitoring trends advises there are two kinds of rising trends, general and specific trends, which can be useful for developing content to publish on a site.
Using the Explore tool, you can leave the search box empty and view the current rising trends worldwide or use a drop down menu to focus on trends in a specific country. Users can further filter rising trends by time periods, categories and the type of search. The results show rising trends by topic and by keywords.
To search for specific trends users just need to enter the specific queries and then filter them by country, time, categories and type of search.
The section called Content Calendar describes how to use Google Trends to understand which content topics to prioritize.
Google explains:
“Google Trends can be helpful not only to get ideas on what to write, but also to prioritize when to publish it. To help you better prioritize which topics to focus on, try to find seasonal trends in the data. With that information, you can plan ahead to have high quality content available on your site a little before people are searching for it, so that when they do, your content is ready for them.”
Read the new Google Trends documentation:
Get started with Google Trends
Featured Image by Shutterstock/Luis Molinero
You must be logged in to post a comment Login