Duplicate title
Moderate effortFound on 80% of audited stores.
Give every page a unique, descriptive title tag that accurately reflects that page's specific content.
What it is
The title tag is the line of text that appears as the clickable headline in Google search results and in your browser tab. When two or more pages on your store share the exact same title tag, search engines — and shoppers — cannot easily tell them apart. A duplicate title means at least one page is missing its own distinct identity, usually because a template has been applied without customisation, a CMS generated a fallback title, or pages were accidentally copied without updating their metadata.
Why it matters
Google uses the title tag as one of its primary signals to understand what a page is about. Duplicate titles confuse its crawlers, can cause the wrong page to rank (or neither page to rank well) for a given query, and split ranking authority between pages that should each stand on their own. For shoppers, identical titles in search results make it impossible to choose between two links — reducing click-through rates and, ultimately, revenue. Google may also silently rewrite a duplicate title to something generic, stripping away any keyword targeting you intended.
How to fix it
- Identify every page sharing the same title tag — your SEO audit tool, Google Search Console (Coverage or Pages report), or a site crawl will list them.
- For each affected page, decide on a unique title that describes only that page: include the primary keyword, the specific product/category/content name, and your brand — for example 'Merino Wool Running Socks – Free Shipping | BrandName'.
- Keep each title between 50–60 characters so it displays in full in search results without being truncated.
- Update the title tag directly in your CMS, theme template, or SEO app — whichever controls <title> output for that page type (product, category, blog post, landing page).
- For page types generated from a template (e.g. all product pages), update the template to dynamically insert the product name, so every generated page gets a unique title automatically.
- After publishing, re-crawl the affected pages in Google Search Console using 'Request Indexing', then verify the new titles appear correctly in the Coverage or URL Inspection tool within a few days.
Fix it on your platform
Pick your platform for the exact steps.
How to fix duplicate title on Shopify
- For individual pages/products: Online Store → Pages (or Products / Collections) → click the item → scroll to 'Search engine listing' section at the bottom → edit 'Page title'.
- For theme-level templates (so every product page auto-generates a unique title): Online Store → Themes → Edit code → open the relevant layout/template file (e.g. 'layout/theme.liquid') and confirm the <title> tag uses dynamic Liquid variables such as {{ page_title }} — Shopify populates this from the product name automatically.
- For bulk updates across many products, use a bulk-edit CSV: Products → Export → edit the 'SEO Title' column in the CSV → import back.
- Install a dedicated SEO app (e.g. Plug In SEO, SEO Manager, or TinyIMG) to audit and bulk-edit title tags store-wide from one dashboard.
How to fix duplicate title on WooCommerce
- Install the Yoast SEO or Rank Math plugin if not already active.
- For individual products: Products → All Products → Edit a product → scroll to the 'Yoast SEO' or 'Rank Math SEO' meta box → edit the 'SEO title' field.
- For template-level control (all products, all categories): Yoast SEO → Search Appearance → Content Types (or Taxonomies) → set the Title template using variables like %%title%% – %%sitename%% to auto-generate unique titles from the product name.
- Use Yoast's 'SEO → Tools → Bulk editor' to review and update titles for many posts/products at once without opening each individually.
How to fix duplicate title on BigCommerce
- For individual products: Catalog → Products → Edit a product → SEO & Sharing tab → edit 'Page Title'.
- For individual categories: Catalog → Categories → Edit → SEO & Sharing tab → 'Page Title'.
- For store-wide template defaults: Storefront → Script Manager is not the right place — instead open Storefront → My Themes → Edit Theme Files (Stencil) → find templates/layout/base.html and verify the <title> block uses {{head.title}}, which BigCommerce populates dynamically from the page's configured title.
- Use the BigCommerce V2/V3 REST API or a third-party SEO app (e.g. Yoast SEO for BigCommerce) to bulk-update page_title fields across large catalogs.
How to fix duplicate title on Wix
- In the Wix Editor, click on any page: Pages & Menu (left panel) → hover the page → three-dot menu → SEO Basics → edit 'Title tag'.
- For dynamic pages (e.g. a product catalog connected to a Wix dataset): Pages & Menu → Dynamic Pages → SEO tab → use the dynamic field picker to insert item-specific fields (e.g. {title}) so each generated URL gets a unique title automatically.
- Use the Wix SEO Wiz or the Site-level SEO dashboard (Marketing & SEO → Get Found on Google) to spot pages still using default titles.
- For Wix Stores products: Wix Dashboard → Store Products → Edit Product → SEO tab → 'Title tag'.
How to fix duplicate title on Squarespace
- For individual pages: Pages panel → hover the page → gear icon (Page Settings) → SEO tab → edit 'SEO Title'.
- For blog posts or portfolio items: open the item editor → top-right Settings cog → SEO → 'SEO Title'.
- For store products: Commerce → Products → edit product → Social tab or SEO section → 'SEO Title'.
- To set a global title format for all pages of a type (e.g. all blog posts), go to Design → Not directly available — Squarespace does not have a bulk SEO title template editor; each page/post title must be set individually or via the Squarespace API if you have developer access.
How to fix duplicate title on Webflow
- For static pages: open the Designer → select the page in the Pages panel → click the gear/settings icon next to the page → SEO Settings → edit 'Title Tag'.
- For CMS Collection pages (e.g. a Products collection): Pages panel → CMS Collections → open the Collection template page → SEO Settings → use the '+Add Field' dynamic binding to insert the item's Name (or a custom SEO Title field) so every generated page title is unique.
- Add a dedicated 'SEO Title' text field to your CMS Collection schema (CMS → Collections → edit schema) so content editors can override the title per item without touching the template.
- Publish changes and verify with Webflow's built-in SEO checklist or a third-party crawler.
How to fix duplicate title on Adobe Commerce (Magento)
- For individual products: Catalog → Products → Edit → Search Engine Optimization tab → 'Meta Title' field.
- For individual categories: Catalog → Categories → Edit → Search Engine Optimization tab → 'Meta Title'.
- For store-wide title templates: Stores → Configuration → Catalog → Catalog → Storefront → 'Product Title Suffix' / 'Category Title Suffix' (controls the brand suffix appended automatically).
- For bulk updates, use the product import/export CSV (System → Data Transfer → Export with entity type 'Products', edit the meta_title column, then re-import).
- Install an SEO extension (e.g. Mageplaza SEO, Amasty SEO) for advanced template-based title generation across the whole catalog.
How to fix duplicate title on WordPress.org
- Install Yoast SEO or Rank Math if not already active.
- For individual posts/pages: open the editor, scroll to the Yoast SEO / Rank Math panel, click 'Edit snippet', and type a unique SEO title.
- For sitewide templates: Yoast SEO → Search Appearance → Content Types / Taxonomies; set patterns with %%title%% %%sep%% %%sitename%% so every page outputs a distinct title.
- Use Yoast's Bulk Editor (Yoast SEO → Tools → Bulk Editor → Titles) to review and edit all page titles in one place without opening each post.
- If using a theme that outputs its own <title> tag and conflicts with the SEO plugin, ensure the theme declares add_theme_support('title-tag') in functions.php and removes any hardcoded <title> in header.php.
How to fix duplicate title on PrestaShop
- For products: go to Catalog → Products → open a product → 'SEO' tab → edit the 'Meta title' field.
- For categories: Catalog → Categories → open a category → 'SEO' tab → 'Meta title'.
- For CMS pages: Design → Pages → open a page → edit 'Meta title'.
- For the shop's default title settings: Shop Parameters → General → set 'Shop name' which is appended to page titles; ensure templates use {$meta_title} in the head.tpl Smarty template.
- For bulk updates use a CSV import module or an SEO module (e.g. SEO Expert by PrestaHero) that lets you set title templates with dynamic product/category name variables.
How to fix duplicate title on OpenCart
- For products: go to Catalog → Products → edit a product → 'SEO' tab → enter a value in 'Meta Tag Title'.
- For categories: Catalog → Categories → edit a category → 'SEO' tab → 'Meta Tag Title'.
- For information pages: Catalog → Information → edit a page → 'Meta Tag Title'.
- For the default title on the homepage and layout: System → Settings → your store → 'Meta Tag Title'.
- Install an SEO extension from the OpenCart marketplace (e.g. SEO Pack Pro) to manage bulk title updates and set dynamic title templates across your catalog.
How to fix duplicate title on Next.js
- Centralise your title strategy in a shared `lib/seo.ts` helper that builds a unique, descriptive title from page-specific data (product name, category, page type) plus a consistent brand suffix.
- For the App Router, export an async `generateMetadata()` function from every `app/**/page.tsx` that calls the helper with data fetched for that specific route — never hard-code a static string shared across pages.
- For the Pages Router, replace any shared/static `<title>` strings in `_app.tsx` or individual pages with per-page `<Head><title>` tags using `next/head`, driven by the same `lib/seo.ts` helper.
- Use Next.js `metadata.metadataBase` (App Router) or an absolute URL in Pages Router so Open Graph titles and canonical tags resolve correctly alongside the unique `<title>`.
- Add the `template` key inside a root `layout.tsx` `metadata` export as a fallback pattern (e.g. `'%s | Brand'`) so any page that only provides a short segment still gets a fully-formed, unique title.
- Audit with `generateStaticParams` or your sitemap to assert every slug produces a distinct title — add a CI test that fetches rendered HTML for key routes and asserts no two `<title>` values are identical.
How to fix duplicate title on Nuxt.js
- Set a global default title template in `nuxt.config.ts` using the `app.head.titleTemplate` option (e.g. `'%s | My Store'`). This ensures every page that sets its own title automatically gets the store suffix appended, making every title unique by construction.
- Remove any hard-coded, shared `<title>` or `useHead({ title: '…' })` calls that are duplicated across pages — typically found in `app.vue`, `layouts/default.vue`, or shared composables.
- In every page component (`pages/index.vue`, `pages/products/[slug].vue`, `pages/categories/[slug].vue`, `pages/cart.vue`, etc.) call `useSeoMeta({ title: … })` (Nuxt 3) with a value derived from the page's own dynamic data (product name, category name, etc.) so the resulting title is unique to that page.
- For dynamic routes (e.g. `pages/products/[slug].vue`) fetch the resource first (via `useAsyncData` / `useFetch`), then pass the fetched entity's name into `useSeoMeta` so the title reflects real content rather than a generic placeholder.
- For the root page (`pages/index.vue`) pass an explicit `titleTemplate` override of `'%s'` (or a fully written-out string) so the homepage title does NOT get the suffix appended twice or left as a bare template string.
- Audit remaining pages (account, checkout, 404, search) and ensure each one calls `useSeoMeta({ title: … })` with a unique, human-readable string — never leaving the title undefined, empty, or identical to another page.
How to fix duplicate title on Gatsby
- Create (or update) a reusable `<Seo>` component at `src/components/Seo.jsx` that uses Gatsby's built-in Head API (`export function Head`) — no third-party library needed in Gatsby v4+.
- In every page file under `src/pages/` (e.g. `index.jsx`, `products/[handle].jsx`, `collections/[slug].jsx`, `about.jsx`) export a named `Head` function that renders the `<Seo>` component with a page-specific `title` prop.
- For template-driven pages (product detail, collection, blog post) created via `gatsby-node.js` / `createPage`, pass the unique title through `pageContext` so the template's `Head` export can consume it dynamically.
- Build every title using a consistent pattern — `{Page-Specific Name} | {Site Name}` — so each title is both unique and branded. Pull `siteMetadata.siteTitle` from a `gatsby-config.js` `useStaticQuery` call inside the component.
- Run `gatsby build && gatsby serve` then audit with `<title>` checks in DevTools or a crawler to confirm no two pages share the same title string.
How to fix duplicate title on Next.js (Headless)
- Identify every route segment in your `app/` directory (e.g. `app/page.tsx`, `app/products/[slug]/page.tsx`, `app/collections/[handle]/page.tsx`, `app/blog/[slug]/page.tsx`, etc.) that currently exports a static or duplicate `metadata` object or uses a shared `<title>` tag.
- For static pages (e.g. Home, About, Contact), export a unique `metadata` object directly from the route file with a page-specific `title` string — never reuse the same string across routes.
- For dynamic pages (e.g. Product, Collection, Blog Post), replace the static `metadata` export with an async `generateMetadata()` function that fetches the resource by its route param (`slug`, `handle`, etc.) and builds the title from real data (e.g. product name, collection title).
- Use Next.js's built-in `title.template` in your root `app/layout.tsx` `metadata` export to automatically append your brand name (e.g. `'%s | My Store'`), so every page only needs to supply the unique `%s` portion — eliminating accidental duplicates from copy-paste.
- Remove any legacy `<Head><title>…</title></Head>` blocks from `pages/` router files or custom `_app.tsx`/`_document.tsx` if you are migrating to the App Router, since mixing both systems causes duplicate or overriding titles.
- Run `next build` and review the build output for any route that still emits a generic or repeated title; fix each one until every route shows a distinct title in the terminal summary.
How to fix duplicate title on Elementor
- In your WordPress dashboard, go to Pages (or Posts) and identify every page built with Elementor that shares a duplicate title tag. You can spot these quickly by running a crawl with a plugin like Yoast SEO or by checking the SEO audit that flagged the issue.
- Open the first offending page in the Elementor editor by clicking 'Edit with Elementor'. Then click the hamburger menu (☰) in the top-left corner of the editor panel and select 'Page Settings' (the gear icon at the bottom of the left panel).
- In the Page Settings panel, scroll to the 'SEO' tab (if you have an SEO plugin such as Yoast SEO or Rank Math active, their meta boxes appear below the Elementor canvas in the WordPress block editor instead — switch to the WordPress editor sidebar for those fields).
- If using Yoast SEO or Rank Math: close the Elementor editor, go to the standard WordPress page editor for that page, and locate the Yoast/Rank Math meta box. Click 'Edit snippet' (Yoast) or expand the 'Title' field (Rank Math). Enter a unique, descriptive title that clearly reflects that specific page's content — include the primary keyword naturally and keep it under 60 characters.
- If you are controlling titles through Elementor's Theme Builder (i.e., a custom Header or single-page template): go to Elementor → Theme Builder → find the relevant template → open it in the editor → locate any Title or Heading widget used as the SEO/HTML title, or use Elementor's Dynamic Tags on the site title widget to map it to each page's individual post title rather than a static string.
- Repeat for every page with a duplicate title, then verify the fixes by revisiting your SEO plugin's audit or by inspecting each page's <title> tag in browser DevTools (right-click → View Page Source → search for '<title>').
Does your site have this issue?
Run a free SEOLZ scan to find duplicate title — and every other issue — across your whole site in minutes.
Scan my site freeFrequently asked questions
What is Duplicate title?
The title tag is the line of text that appears as the clickable headline in Google search results and in your browser tab. When two or more pages on your store share the exact same title tag, search engines — and shoppers — cannot easily tell them apart. A duplicate title means at least one page is missing its own distinct identity, usually because a template has been applied without customisation, a CMS generated a fallback title, or pages were accidentally copied without updating their metadata.
Why does duplicate title matter?
Google uses the title tag as one of its primary signals to understand what a page is about. Duplicate titles confuse its crawlers, can cause the wrong page to rank (or neither page to rank well) for a given query, and split ranking authority between pages that should each stand on their own. For shoppers, identical titles in search results make it impossible to choose between two links — reducing click-through rates and, ultimately, revenue. Google may also silently rewrite a duplicate title to something generic, stripping away any keyword targeting you intended.
How do I fix duplicate title?
Give every page a unique, descriptive title tag that accurately reflects that page's specific content.
Authoritative references
- Influence your title links — Google Search Central
- SEO Starter Guide — Google Search Central
- Consolidate duplicate URLs (canonical) — Google Search Central