BigCommerce SEO Checklist

How to start things right

BigCommerce is a great eCommerce system, but it needs a few things setup and some eCommerce SEO tweaks to get it running on all cylinders.

I've been fixing up BigCommerce sites for quite a while now and realised I hadn't fully documented all the standard things I do. So I decided to document it, not just for me, but for everyone. And this article is that document.

Your website should ideally be reviewed against this checklist before going live so that you don't make a mistake that can cost you later on. Tasks flagged as (Do This Now) are the most important ones to do on day one. Other tasks can be done over time.

For those using Google Ads it includes a section of tasks to help set that up as well.

We offer a set of BigCommerce SEO and SEM Packages which include many of the activities listed here. Since writing this we have refined and expanded our packages to include a lot more features, to support both BluePrint and Stencil themes and to use the new gtag.js code as recommended by Google.

Let's get started...

Google Analytics (Do This Now)

You need to know what's happening on your website to know how to improve it. Google Analytics is one of the best tools to provide you with visitor data, including where they came from, what pages they visited and what they bought.

To set up a Google Analytics account with BigCommerce please check out this article that details the correct initial configuration to enable some of the features mentioned below:

Adding Google Analytics to BigCommerce

Google Analytics - Event Tracking

This is a more advanced one. By default Analytics does not pick up some events that happen on a website. For example, clicks on an email address or clicks on links to other websites. However, it is possible to add code to these links that enables their tracking.

Here is some example code to track an email click as an event:

<a href="mailto:[email protected]" onclick="ga('send', 'event', 'Email', 'Click', 'Email in Footer');">[email protected]</a>

Change the Email, Click and Email in Footer text to suit the event you are tracking. They represent Category, Action & Label in that order.

Once you have created events you can view them in Reporting->Behaviour->Events.

Some ideas for events are clicks on email addresses, phone numbers, social profiles and other websites.

You can also add new Goals based on these events. e.g. A good goal may be tracking when a social media icon is clicked on.

Google Analytics - Outbound Link Tracking

It can sometimes be useful to know when people click a link to other websites. Adding this Outbound Link Tracking Script to your footer.html file will enable that. Don't forget to put it in script tags. You can then see those clicks as outbound click events in the Behavior->Events report.

Google Analytics - Custom PageView Tracking

This is another more advanced one. Analytics can track html pages but it does not pick up other files like documents or downloads. To kind of track them we can set up custom page views when a user clicks a link to access the document. They then show up like a normal page in Analytics.

Here is some example code to track a click to view a PDF:

<a href="/somedocument.pdf" onclick="ga('send', 'pageview', {location:'', title:'Some Document'});" target="_blank">View Some Document</a>

Change the page and title parameter values (in bold italic) to what you want the pageview to represent. The target="_blank" is quite important as without it the code may not complete.

Once you have set up these page views you can also add document views or downloads as Goals.

Google Analytics - Tracking Downloads

This is an automated way to track clicks to certain file types like PDFs, Docs or other downloads. Insert the following code in Panels/Footer.html file.

<script type="text/javascript">
$(document).ready(function() {
    $("a[href$='.pdf'], a[href$='.zip'], a[href$='.docx'], a[href$='.doc'], a[href$='.txt']").each(function(index) {
      var jThis = $( this );
      var thePage = jThis.prop('href');
      if (thePage.length > 0) {
        var theTitle = jThis.text();
        if (theTitle.length == 0) {
           theTitle = thePage;
          ga('send','pageview', {location: thePage, title: theTitle});

Edit the highlighted code to include the file extensions you want it to track.

Google Analytics - Goals (Do This Now)

Goals are actions that you want your visitors to do: Make an Order, Subscribe, Contact You. Tracking these actions will help you analyse how successful your website is.

I have shared some pre-made Goals for everyone to use. To add them in Analytics you need to:

  1. Go to Admin
  2. Select Goals from the View section
  3. Click on the Import from Gallery option at the top
  4. Search for BigCommerce
  5. Import the Goals you wish to track.

Don't forget to rate them if they work :-)

Google Analytics

Google Analytics - Checkout Progress Tracking

Conversion optimisation is about analysing the path people follow when purchasing, identifying problem spots, and then resolving them. To do this you can set up what is called a conversion funnel in Google Analytics. It will show you each step of the path to conversion and if people are dropping out on the way. To set this up please check out:

BigCommerce Checkout Progress Tracking

Note: you may have already added the Order Goal when completing the previous task. So that step can be skipped.

Google Analytics - Site Search (Do This Now)

This is an easy one to setup and it lets you see what people searched for via the websites search feature.

  1. In Admin find the View Settings
  2. Switch on Site search Tracking
  3. Enter search_query as the Query parameter
  4. Switch on Site search categories
  5. Enter brand,category,price_from,price_to as the Category parameters
  6. Save

Then you can view them in Reporting->Behaviour->Site Search.

Google Analytics - PayPal Referral fix

If you use the PayPal Express Checkout payment method or any other payment system that works from outside your store, then you will have sales attribution issues because the external host (e.g. will take the credit for your sales (Tracking True Referrals when using PayPal). This is especially annoying if you want to see the value of any paid advertising.

To minimise this effect you can add to the Referral Exclusion List under Admin->Tracking Info->Referral Exclusion List.

Also make sure you have set your PayPal account to Auto Return so that Analytics can pick up the completed sale.

Google Analytics - Filters

Recently referral spam bots have found a way to spam your Analytics data. This can give you false readings.

There is no 100% solution to this, but adding a filter can help remove them.

Filters are created in Admin->VIEW->Filters. Filters remove data permanently, so before creating a filter I would recommend creating a second view that you can keep unfiltered.

Click NEW FILTER and follow these steps:

  1. Set the filter name to Block Spammy Referrals
  2. Select Custom
  3. Select Exclude
  4. Set the Filter Field to Referral
  5. Enter this as the Filter Pattern:

Note that the pattern is not exhaustive and has been taken from a few sources to identify known referral spam bots. You may need to extended it or create secondary filters to cover the bots that attack you.

Google Analytics - Demographics Tracking

Demographics are things like the age, gender and interests of the people who visit your website.

Demographics Tracking requires your website to gather information on your visitors. Because of this, before you can see Demographics data you need to make sure your Privacy Policy conforms to Google's Remarketing Privacy Policy Requirements .

Once that's in place you can enable Demographics and Interest Reports via Admin->Property Settings. You may also want to enable Advertiser Features while you are there.

Finally you need to add a line of code to your Google Analytics tracking code in BigCommerce. Place this after the create line:

ga('require', 'displayfeatures');

Give it some time then pop over to Reporting->Audience->Demographics to find out more about who comes to visit.

Google Search Console (Google Webmaster Tools)

Google Analytics - Missing Page (404) Report

It is possible to view traffic to missing pages in Google Analytics. In Behaviour->Site Content->All Pages , add Page Title as your Secondary Dimension and do an advanced filter on Page Title containing "Not Found". The Navigation Summary tab can help you find how people got to the missing pages and what they did from them. If the issue is external then showing Full Referrer will give you even more info. It's just a bit hard as we have already used both dimensions!

I put together a custom report that makes it easier to drilldown to the referrer and other things. This report also lets you use a Secondary Dimension like referrer or previous page without losing the filter or view of the URL in question.

Google Search Console (Do This Now)

The Google Search Console (Google Webmaster Tools) is an essential tool for an SEO as it tells you insider information on how Google is indexing your website. A few days after verification and you will see data related to crawling, indexing, sitemaps, linking as well as error reports and messages to help you keep your website running well.

The first thing to do is add all your sites to your account. Yep, even if you only have one domain name, you have several sites:


Replace with your actual domain.

If you have already set up Analytics on the same account you should be able to verify each automatically using the Analytics verification options. Otherwise follow the instructions to use another method.

Note that your https sites will probably report "severe health issues". This is because BigCommerce blocks crawling of secure sites by default using the robots.txt file. This is not an issue unless you have set your website to always use https on all pages. Not an option for most.

You can formally link your Google Search Console account to your Analytics account. In Analytics go to Admin->Property Settings and scroll to the end to see the option. This lets you see the Google Search Console data in Analytics->Reporting->Acquisition->Search Engine Optimisation.

Google Search Console - Preferred Domain (Do This Now)

As you saw earlier, you actually have 4 sites for your one domain. It is best practice to pick one and stick with it (forever). This removes the chance of technical issues with duplication.

At this time BigCommerce only supports https sites for their Enterprise customers. So most must pick from the first two.

In your Google Search Console you can select your preferred site via the Site Settings which you can find by clicking on the right hand cog button.

Make sure you set your Google Search Console site to the same preferred variant as your setting in BigCommerce->Setup & Tools->Store Settings->Website->Search Engine Optimisation . If BigCommerce has no preference set, then do it now. This makes BigCommerce force Google and Visitors to the correct site thus removing any chance of confusion.

Pro tip: If you have not made a preference choice yet, look at Google Search Console->Search Traffic->Links to Your Site for each site and pick the one that has the best looking set of links.

Google Search Console - Target Region (Do This Now)

Google allocates a region to every site. This is the region your website is officially targeting and therefore it may perform better there.

Go to Google Search Console->Search Traffic->International Targeting->Country to see your options.

If you have a domain that is country specific (like mine) then you have no choices and will automatically be targeting your own country.

Some domains (like .com ones) are country independent. For these you want to make sure you set it to the country you most want to target. There is an unlisted option but I don't know the consequences of using it!

Google Search Console - XML SiteMap

XML Sitemaps are machine readable files that list all the pages on your website. Your Google Search Console lets you specify a sitemap for your site in Google Search Console->Crawl->Sitemaps

BigCommerce kindly creates one of these sitemaps for you. So all you need to do is click the big red button, enter xmlsitemap.php into the box and submit it.

Myth Busting: You don't need to keep re-submitting your sitemap. Google will periodically get the latest one on its own.

Sitemaps do not in themselves help you rank, however they can help Google decide how to crawl the website.

Submitting also means you can see how well the pages in the sitemap have been crawled. After a while most websites should be at a point where most pages are indexed.

SEO Consultation Services
Amongst other things I offer Technical SEO Support at a Very Reasonable Rate.
More Info...

Google Search Console - URL Parameters

BigCommerce is not perfect at controlling where Google crawls. The Google Search Console->Crawl->URL Parameters section lets you give Google guidance on which URLs to crawl and which to avoid.

BE VERY CAREFUL: this tool can mess things up royally.

Here are some settings I use:

  • sort - Sorts, Value = featured
  • page - Paginates, Every URL
  • product_id - Specifies, Every URL
  • image_rule_id - Specifies, Every URL
  • current_image - Specifies, Every URL
  • type - Specifies, Every URL
  • categoryid - Specifies, Every URL
  • action - Other, No URLs
  • setCurrencyId - Other, No URLs
  • fullSite - Other, No URLs

The sort parameter gets combined with other parameters like page, thus I am allowing it's index when set to the default sort value.

Note that the default robots.txt file disallows productimage.php which is where product_id and image_rule_id are used. So their setting here have no specific use.

Google Search Console - Fixing Broken Links (Do This Soon)

Now you have your Google Search Console setup you should check it regularly.

One valuable tip is to check Google Search Console->Crawl-Crawl Error and see if you have any Not Found (404) Error. See if any of them are due to a moved or removed product/page.

If appropriate you can create Redirects in BigCommerce (Setup & Tools->301 Redirect) to send people who visit those broken pages to a more appropriate page. e.g. a similar product or a relevant category.

After fixing a URL with a redirect you can mark it as fixed in the Google Search Console error report.

Note: Missing page errors are not an issue in themselves. If a page truly does not exist then leave it that way. You will not get penalised for having lots of them. All we want to do is clean up cases where an admin change caused a page to go missing.

Another scenario that causes lots of missing pages is when you switch to a new content management system. This can cause all your old product pages to move and your website to tank in rankings. In this case it is very important that you set up redirects to help Google also move.

BigCommerce Setup And Tools


Now to the on-site alterations that can help SEO your website.

BigCommerce - URL Structure (Do This Now)

In Setup & Tools->Store Settings->URL Structure I recommend you stick to the SEO Optimized (Short) options.

The reason for this is that the Category option can cause your product URLs to change if you re-categorise your products or change the Categories URL. We want to avoid changing URLs as it causes some or complete loss in established ranking for a page.

If you were using an alternate structure and your website has been live for some time, I would recommend leaving it as is. The main point about this activity is that we do not unnecessarily want to change URLs. So changing all of them now to stop some changing in the future makes no sense.

BigCommerce - Robots.txt File

This file specifies which URLs you don't want bots (robots, crawlers) to crawl. It's main use is to guide the bots into crawling the right URLs and not waste time crawling useless ones. It does not technically mean they will be out of the search results, but as the bots can't see the URLs content their ranking ability will be seriously diminished.

I personally like to add this one as it stops the bots trying to crawl the poorly coded add to cart buttons!

Disallow: /*action=add

And I remove this one if it's there. Unfortunately this one accidentally blocks all paged content as well.

Disallow: /*sort=

A more advanced tip is to then block specific sort values so only the default sort (featured) links are crawled:

Disallow: /*sort=newest
Disallow: /*sort=bestselling
Disallow: /*sort=alphaasc
Disallow: /*sort=alphadesc
Disallow: /*sort=avgcustomerreview
Disallow: /*sort=priceasc
Disallow: /*sort=pricedesc
Disallow: /*sort=product_name
Disallow: /*sort=product_brand

You may also want to add your sitemap into the file. This helps crawlers and bots find it. Place something like this at the end of the file and change the domain to yours.


BigCommerce - Rich Snippets - Breadcrumbs

Rich Snippets are enhanced listings in the search results. This article explains how to make your Breadcrumbs show up in the URL section of your Google results.

BigCommerce Rich Snippet Breadcrumbs

BigCommerce - Rich Snippets - Products

This article explains how to add product review stars and prices to your Google search results.

BigCommerce Rich Snippet Products

BigCommerce - Google Maps

In Setup & Tools->Store Settings->Miscellaneous->Google Settings you can set up a Google Maps API key. This enables BigCommerce to show maps of things like orders. Currently I can't find where the maps are!

BigCommerce - Original Content & Product Descriptions (Do This Soon)

To rank in Google it is very important that your content is original. i.e. yours. With eCommerce sites the typical issue is that they all copy the manufacturers descriptions. If your content is not original you have two issues:

Your pages will be in direct competition with all the other websites that use the same content. Google's duplicate filter ensures only on of you will show up in any search result. What are the odds it will be you?

Too much copied content and you may get hit by the Quality Algorithm called Panda. This will downgrade your website. Note Panda also hits other issue like thin or spun content.

BigCommerce - SEO Titles & Meta Description (Do This Soon)

The Page Title and Meta Description values let you specify what text you would like to be used in the search results. They are your marketing copy for your pages. Writing good titles and descriptions can increase the chances people click on your listing and not someone else's.

Pages (Advanced Options), Categories (Search Engine Optimization), Brands and Products (Other Details->Search Engine Optimization) contain these options (please ignore the Meta Keywords option as it has no use).

I've written several articles and a tool that should help:

For some reason you can only edit the description in Blog Posts!

BigCommerce - Image Alt & Title Text

Every image can have some text associated with it. The alt (alternate) text is designed for helping visually challenged people understand what the image represents while the title text is displayed when you hover over the image. Google is known to analyse the alt text so it can help an image or the page it's on rank.

The alt text should contain a concise and clear description of what the image is about. If the image is inside a link then it should explain what the link is about. If the image is not important (decorative) then it should be blank.

Only use the title if you want text to show when hovering over the image (tooltip). It should contain something that adds information about the image. e.g. The location of a photo, who took the photo, who is in the photo.

For your product images you want to make sure you fill in the product images descriptions. These are used for both the alt and title. Unfortunately there is no way to specify them separately so enter the text for use as an alt.

When adding/editing images via the HTML editor the image editor has an appearance tab with an Image description field (alt) and a Title field. Both these should be changed from the default which is the ugly file name!

BigCommerce - Google Sitelinks Search Box & Site Names

Google sometimes shows a search box in your search results that lets people go straight to the websites search results. They call it the Sitelinks Search Box . To potentially enable this rich snippet feature you need to add the following code into your default.html template file just before the closing </body> tag. Change the red code to use your own domain and website name. The site name properties may be used in mobile search results.

<script type="application/ld+json">
   "@context": "",
   "@type": "WebSite",
   "url": "",
   "name" : "Your WebSite Name",
   "alternateName" : "An alternative name for your WebSite",
   "potentialAction": {
     "@type": "SearchAction",
     "target": "{search_term_string}",
     "query-input": "required name=search_term_string"

BigCommerce - Have one Main Heading (H1) per page

The main heading of a page should describe what the page is about. The main heading is coded by placing its text inside an H1 tag.

Some themes or theme configurations cause the brand name or even an image to be in an H1 tag. Other templates place what should be the main heading in an H2 tag.

You should review your theme to see if using the corrects tags. A simple way is to pick a product page, view its source, then search for H1s. Does the only H1 contain the products name?

If not you should get your theme updated so that all page types use the correct H1 tags.

BigCommerce - Secure Certificate

Setting up your own secure SSL certificate is a great way to make your website safer and more trustworthy. Instead of having to send potential customers to a remote PayPal website (PayPal Express) they can directly purchase from yours. Avoiding this PayPal jump also solves an issue with tracking the true referrer of a sale.

BigCommerce now offer free certificates and a site-wide https option.

Google Ads

If you use Google Ads (Formerly AdWords) then you should make sure it is correctly connected to your Analytics account and that you are tracking conversions. It may also be beneficial to link it to your Google Search Console (Google Webmaster Tools) account

Your primary conversion metric will be sales. It is possible to track actual order values in Google Ads and use that to determine if your ad costs are worth it. To set this up please read my BigCommerce Order Tracking in Google Ads Article.

I sometimes set up secondary conversions. This can help when the number of sales is not enough to do accurate analysis. In Google Ads you can use Analytics Goals as conversions (Tools->Conversions->Import form Google Analytics). Goals like Subscribe or Contact Form can make good secondary conversions. Set the dollar value of the goal to a value you feel the goal/conversion is worth. e.g. how much the average subscriber/contact spends.

Google Ads - Shopping, Remarketing & Dynamic Remarketing

This is a super complex one to completely setup. It involves setting up several different advertising systems to work together. A Gold star for all that make it.

Along the way you will set up shopping ads, remarketing ads and finally dynamic remarketing ads.

Google Ads Dynamic Remarketing in BigCommerce


It took me two days to put this together and a lot longer to work it all out in the first place. I hope you managed to get through it a lot quicker and things went smoothly.

If you did have any problems. either with the instructions or the results. Please comment below or contact me. I wish to keep improving this over time.

Now take a break.