On this page
This checklist covers the SEO settings and content of a nopCommerce 4.80 or 4.90 store. Every default and admin label below was checked in the nopCommerce source code, so you can follow it setting by setting. It doesn’t cover link building or keyword research, which work the same on any platform.
The nopCommerce SEO checklist
Work through it once after installing or upgrading, and again after any large import.
- Store URL uses https, and SSL is ticked for the store
- WWW prefix requirement set to one version of your domain
- Canonical URLs enabled
- Page title SEO adjustment set so the page name comes first
- Default page title and meta description set for each store
- Home page title and meta description written by hand
- Product URL structure chosen before launch, and left alone afterwards
- No duplicate URL names, and old URL names kept so they redirect
- sitemap.xml loads and is submitted in Search Console
- Thin pages, such as product tags, left out of sitemap.xml if you don’t use them
- robots.txt keeps its default rules and lists the sitemap
- Every product has its own meta description, or a short description to generate one
- Categories and manufacturers have their own meta descriptions
- Every product has a picture, a description, a manufacturer and a GTIN or part number where one exists
- No published products past their end date, and no empty categories
- Microdata tags on, and product pages pass Google’s Rich Results Test
- Language URLs on for multi-language stores, with a URL name per language
- Pictures resized for the web, and unused plugins removed
- Search Console verified, with no unexpected pages in the “not indexed” report
- A catalog audit run after every big import
The sections below explain each item and where to find it.
SEO settings to change first
Most SEO settings are in Configuration → Settings → General settings, in the SEO, Sitemap, robots.txt and Localization sections. These are the install defaults in 4.80 and 4.90, and what we recommend:
| Setting | Default | What to do |
|---|---|---|
| Enable canonical URLsGeneral settings → SEO | Off | Turn on. Product, category and other pages then tell search engines their one correct address. |
| WWW prefix requirementGeneral settings → SEO | Doesn’t matter | Choose “Pages should have WWW prefix” or “Pages should not have WWW prefix” to match your store URL, so the other version redirects. |
| Page title SEO adjustmentGeneral settings → SEO | Page name comes after store name | Choose “Store name comes after page name”, so search results show “Oak desk. Your Store” and the product name is read first. |
| Generate product META descriptionGeneral settings → SEO | On | Keep it on. Products without a meta description then use their short description. |
| Microdata tagsGeneral settings → SEO | On | Keep it on. It adds Product and breadcrumb structured data. |
| Open Graph and Twitter META tagsGeneral settings → SEO | On | Keep them on for link previews on social media and in chat apps. |
| SEO friendly URLs with multiple languages enabledGeneral settings → Localization | Off | Turn on if the store has more than one language, so each language gets its own URL. |
| Product URL structure typeCatalog settings | /Product | Keep the default unless you have a reason. Decide before launch, because changing it moves every product URL. |
Also open Configuration → Stores and fill in the Default page title, Default meta description, Home page title and Home page meta description for each store. Make sure the store URL starts with https:// and SSL is ticked, so every page is served over HTTPS.
URLs and redirects
nopCommerce gives every product, category, manufacturer, topic, blog post and news item a URL name, shown as Search engine friendly page name in its SEO section. Leave it empty and nopCommerce creates one from the name, such as /oak-desk.
- Renaming is safe. When you change a URL name, nopCommerce keeps the old one as inactive and redirects it to the new one with a 301. Don’t delete old entries in System → Search engine friendly page names, or the redirect stops working.
- Product URL structure. Catalog settings can put the category or manufacturer in product URLs (
/desks/oak-desk). Other forms redirect to the chosen one, but changing it on a live store still moves every product URL, so decide before launch. - Duplicate URL names. Two pages with the same URL name in one language means only one can be reached. They usually come from copied or imported items. Search for the name in System → Search engine friendly page names and make each one unique.
Moving from another platform? Its old URLs, such as /products/oak-desk, need redirect rules of their own. Our nopCommerce migration guide explains how to map them.
Canonical URLs and duplicate pages
The same page can often be reached at more than one address. Three settings decide how nopCommerce handles that:
- WWW prefix requirement. With “Doesn’t matter”, the store answers on both
www.example.comandexample.com. Pick one, so the other redirects. - Enable canonical URLs. Adds a canonical tag to product, category, manufacturer and other pages, pointing at the page’s clean URL. Sorted, filtered and paged versions of a category then point back to the category.
- Query string in canonical URLs. Off by default, and only available under Configuration → Settings → All settings as
seosettings.querystringincanonicalurlsenabled. Leave it off: turning it on keeps sorting and view parameters in the canonical URL, which creates more duplicates than it removes.
sitemap.xml
Every nopCommerce store has a sitemap at /sitemap.xml. It is on by default, lists products, categories, manufacturers, topics, product tags, blog posts and news, and is rebuilt every 48 hours. Large catalogs are split into several sitemap files automatically.
- Submit it in Google Search Console and Bing Webmaster Tools.
- Leave out thin pages. Product tag pages are often near-empty lists. To drop them, set
sitemapxmlsettings.sitemapxmlincludeproducttagstoFalseunder All settings. The other sitemap.xml settings, includingsitemapxmlsettings.sitemapxmlenabled, are only there too. - Add custom pages. Landing pages that aren’t products, categories or topics can be added with
sitemapxmlsettings.sitemapcustomurls.
The Sitemap section in General settings controls a different thing: the HTML sitemap page at /sitemap for customers. It leaves products out by default, which is fine, since search engines use sitemap.xml.
robots.txt
nopCommerce builds /robots.txt for you. Its rules are in the robots.txt section of General settings:
| Field | What it does |
|---|---|
| Disallow paths | Paths crawlers should skip, such as the admin area, install pages and links with a returnUrl. |
| Localizable disallow paths | Storefront paths to skip, such as the cart, checkout, customer account pages, compare, wishlist and search results. They are repeated for each language prefix when language URLs are on. |
| Additions rules | Extra lines added to the end of the file, such as rules for a specific crawler. |
| Allow sitemap.xml | On by default. Adds the “Sitemap:” line that points crawlers at your sitemap. |
Keep the default disallow list: it stops crawlers wasting time on the cart, checkout and account pages. Two files in the wwwroot folder change the output: robots.custom.txt replaces the whole generated file, and robots.additions.txt is added to the end.
Page titles and meta descriptions
Each product, category, manufacturer and topic has Meta title, Meta description and Meta keywords fields in its SEO section. Search engines ignore meta keywords, so you can leave them empty.
- Titles fall back to the product or category name, so they are never empty. Write a meta title only when the name alone doesn’t say enough, such as adding the brand or type.
- Product meta descriptions fall back to the short description when Generate product META description is on. Products with neither show the store’s default description, so many pages share one text.
- Category and manufacturer meta descriptions have no automatic fallback other than the store default. Write one for each, starting with your top-level categories.
- Duplicate meta descriptions often come from copied products or imports that filled every product with the same text. Give each product a description that says what is different about it. For many products at once, you can bulk-edit meta data via import.
nopCommerce 5.00 can generate meta titles and descriptions with AI for products, categories and other pages. Our nopCommerce 5.0 guide covers that and the other changes.
Structured data
With Microdata tags on, which is the default, nopCommerce adds Product structured data (in JSON-LD format) to product pages and breadcrumb data to category pages. Google uses it for rich results such as price, stock and review stars, and Merchant Center can read it too. This is where each property comes from:
| Property | Comes from |
|---|---|
name | Product name |
description | Short description (empty if the product has none) |
image | First product picture, or the “no image” placeholder |
sku · gtin · mpn | SKU, GTIN and manufacturer part number |
brand | The product’s manufacturers |
offers.price | Product price, left out when “Call for price” is on |
offers.availability | In stock or out of stock. Products that allow backorders count as in stock |
offers.priceValidUntil | Available end date, when set |
aggregateRating · review | Approved product reviews |
So the structured data is only as good as the product: a product without a short description, picture or manufacturer sends empty or placeholder values. nopCommerce doesn’t add shipping, return policy or condition properties; Google treats them as recommended, not required. Test a few product pages in Google’s Rich Results Test (opens in a new tab).
Product and category content
Settings get pages indexed; content gets them ranked. Catalog problems are hard to see one product at a time, so check the whole catalog for:
- Products without pictures, or without a short and full description
- Products without their own meta description, and meta descriptions shared by several products
- Products without a manufacturer, or without a GTIN or part number where one exists
- Published products past their end date, which return “page not found”
- Products limited to stores or customer roles that nobody can see
- Empty categories, and categories without a meta description
Picture alt text isn’t on this list: nopCommerce uses “Picture of” followed by the product name when a picture has none. You can override it per picture in the product’s Pictures section.
Our free StorePulse plugin checks all of the above and lists the products behind each problem with a link to edit them. The nopCommerce catalog quality guide explains each check and how to fix it.
Shoppers also need to find those products on the store itself. On 4.90, our nopCommerce search and autocomplete plugin shows products, categories and brands while the shopper types, using default nopCommerce search or Algolia.
Multi-language stores
By default, every language of a nopCommerce store shares the same URL, and the language is remembered per visitor. Search engines then see only one language. For a multilingual store:
- Turn on SEO friendly URLs with multiple languages enabled in the Localization section of General settings. URLs then start with the language code, such as
/de/. - Fill in the URL name, meta title and meta description on each language tab of your products and categories.
- Leave Automatically detect language off, so crawlers aren’t redirected away from a language.
With language URLs on, sitemap.xml lists each page’s other language versions with hreflang. nopCommerce doesn’t add hreflang tags to the page itself, but Google accepts them in the sitemap.
Page speed
Speed affects both rankings and sales. The common causes on nopCommerce stores are oversized pictures, plugins and widgets that are installed but not used, slow hosting or database, and a database that has grown with guest records and logs. Start with the official nopCommerce performance guide (opens in a new tab), and check database growth with the nopCommerce database cleanup guide. If pages are still slow after that, we offer Core Web Vitals and speed tuning for nopCommerce stores.
Google Search Console
- Verify the store. For the HTML tag method, paste Google’s meta tag into Custom <head> tag in the SEO section of General settings.
- Submit
https://your-store/sitemap.xmlunder Sitemaps. - Check the page indexing report every few weeks. Cart, checkout and account pages blocked by robots.txt are expected; product and category pages marked “not indexed” are worth a look.
- After a migration, an upgrade or a URL change, watch the report for 404 errors.
Frequently asked questions
Is nopCommerce good for SEO?
Yes. It has search engine friendly URLs, editable meta titles and descriptions on every product, category, manufacturer and topic, an automatic sitemap.xml, an editable robots.txt, canonical URLs, 301 redirects when a URL name changes, and Product structured data. A few of these are off by default, so check the settings in this guide after installing.
Does nopCommerce create a sitemap automatically?
Yes. Every store has a sitemap.xml at the root of the domain, rebuilt every 48 hours by default. It lists products, categories, manufacturers, topics, product tags, blog posts and news. There is also a separate HTML sitemap page at /sitemap for customers.
How do I edit robots.txt in nopCommerce?
Open Configuration → Settings → General settings and scroll to the robots.txt section. You can add paths to disallow and extra rules there. To replace the file completely, put a robots.custom.txt file in the wwwroot folder; to add lines to the end, use robots.additions.txt.
Why do all my category pages show the same description in Google?
Categories and manufacturers without their own meta description fall back to the store’s default meta description, so they all share it. Unlike products, nopCommerce doesn’t generate one from the category description. Write a meta description in the SEO section of each category and manufacturer.
Can I noindex a page in nopCommerce?
Not from the admin area in 4.80, 4.90 or 5.00; noindex settings are planned for a later release. Until then, leave thin pages out of sitemap.xml, unpublish pages you don’t need, or add a meta robots tag through a small plugin or theme change. A robots.txt disallow stops crawling, but a blocked page can still be indexed from links.
Do I need an SEO plugin for nopCommerce?
Not for the basics: everything in this checklist is built in. Plugins help with things nopCommerce doesn’t do, such as redirects from another platform’s old URLs, noindex rules, or checking the whole catalog for gaps. StorePulse, our free plugin, checks the catalog part.
Next steps
Change the defaults first, since they take minutes and affect every page. Then run a catalog audit and fix the gaps on your best-selling products and top categories before the long tail.
Selling on Google Shopping too? Read our nopCommerce Google Shopping feed guide. If you would like us to review your store, send its address to contact@cartenvo.com.