Page not found
Moderate effortFound on 19% of audited stores.
Fix broken internal links pointing to pages that return a 404 error by either removing those links or setting up a 301 redirect from the missing URL to the correct replacement page.
What it is
A 404 ("Page Not Found") error means a URL on your store no longer exists — but other pages on your site still link to it. Every time a shopper or search engine follows one of those links, they hit a dead end instead of useful content. This can happen when you delete a product, rename a collection, restructure your URLs, or migrate to a new platform without properly redirecting old addresses.
Why it matters
Search engines like Google treat 404 pages as dead ends: any ranking authority ("link equity") that flowed through those internal links is wasted instead of boosting the destination page. Googlebot also has a limited crawl budget — time spent re-crawling broken URLs is time not spent discovering your new or best-selling pages, which can slow indexing and hurt rankings. For shoppers, clicking a link and landing on a 404 page destroys trust, interrupts the purchase journey, and directly costs you sales. If enough 404s accumulate, Google can downgrade its overall assessment of your site's quality.
How to fix it
- Identify every internal link on your site that points to the broken 404 URL (your scanner report or Google Search Console → Pages → Not found (404) will list them).
- Decide the correct action: if the page was permanently removed with no replacement, delete or update the links pointing to it; if the page moved or was replaced by another page, set up a 301 redirect from the old URL to the new one.
- Create the 301 redirect in your platform's redirect manager (old URL → new URL). A 301 tells search engines the move is permanent and passes ranking signals to the destination.
- Go to every page that contained an internal link to the broken URL and update or remove that link so it points to the correct destination (or is removed entirely if no replacement exists).
- After saving, verify the old URL now returns a 301 in your browser or a tool like httpstatus.io, and confirm the destination page loads correctly.
- Re-submit the affected pages (or your sitemap) in Google Search Console to prompt Google to re-crawl and clear the 404 error from its index.
Fix it on your platform
Pick your platform for the exact steps.
How to fix page not found on Shopify
- Log in to your Shopify admin and go to Online Store → Navigation → URL Redirects.
- Click 'Create URL redirect'. Enter the old broken path (e.g. /products/old-product-handle) in 'Redirect from' and the new correct URL in 'Redirect to'. Save.
- To fix the internal links, go to Online Store → Pages (for content pages), Products, or Blog Posts and edit each page that contains the broken link. Update or remove the anchor tag in the page content editor.
- For links inside your theme (navigation menus, footers, featured-product sections), go to Online Store → Navigation and edit the offending menu item, or use the theme editor (Online Store → Themes → Customize) to update hard-coded links in sections.
- Verify by visiting the old URL in your browser — you should be automatically sent to the new page. Confirm the HTTP status is 301 using a tool like httpstatus.io.
How to fix page not found on Shopify Plus
- Follow the same steps as Shopify above. Shopify Plus merchants with large redirect lists can also bulk-upload redirects via Online Store → Navigation → URL Redirects → Import (CSV format: redirect,location).
- For enterprise sites managed via the Storefront API or custom themes, ensure theme developers update any hard-coded URLs in Liquid templates (layout/theme.liquid, sections/.liquid, snippets/.liquid).
- Use the Bulk Redirects app from the Shopify App Store if managing hundreds of 404s at once.
How to fix page not found on WooCommerce
- Install the free 'Redirection' plugin (by John Godley) from WordPress.org if not already active: Plugins → Add New → search 'Redirection' → Install & Activate.
- Go to Tools → Redirection → Add New. Enter the old broken URL in 'Source URL' and the correct destination in 'Target URL'. Make sure the redirect type is '301 - Moved Permanently'. Click 'Add Redirect'.
- To fix the internal links in page/post content, go to Pages or Posts, open the editor for each affected page, and update or remove the broken link in the block editor or Classic Editor.
- For broken links in menus, go to Appearance → Menus, find and update the affected menu item URL, and save.
- For broken links in widgets or theme files, edit via Appearance → Widgets or directly in the theme PHP/template files (requires FTP or file manager access).
- Verify with the Redirection plugin's log (Tools → Redirection → Log) — it will show the 301 being served successfully.
How to fix page not found on BigCommerce
- In the BigCommerce control panel, go to Server Settings → 301 Redirects.
- Click 'Create a Redirect'. Choose 'Manual' redirect type, enter the old broken URL path (e.g. /old-category/old-product) and the new destination URL. Save.
- To fix internal links in page content, go to Storefront → Web Pages, open each page, and use the WYSIWYG editor to update or remove the broken link.
- For links in navigation menus, go to Storefront → Navigation and edit the affected menu items.
- For links inside theme template files (.html / Handlebars), go to Storefront → My Themes → Advanced → Edit Theme Files and update the hard-coded URLs.
- Verify the old URL now redirects correctly by visiting it in a browser or using an HTTP status checker.
How to fix page not found on Wix
- In the Wix dashboard, go to Marketing & SEO → SEO Tools → URL Redirect Manager.
- Click '+ New Redirect'. Enter the old broken URL and the new destination URL. The redirect type defaults to 301. Save.
- To fix internal links in page content, open the Wix Editor, navigate to the page containing the broken link, click the linked element, click the link icon, and update or remove the link.
- For links in menus, use the Editor to open the menu widget, edit the menu items, and update the broken URL.
- Wix does not allow editing server-side template files, so all link fixes must be done through the visual Editor.
- Verify by visiting the old URL in a browser and confirming it lands on the correct destination page.
How to fix page not found on Squarespace
- In the Squarespace dashboard, go to Settings → Advanced → URL Mappings (for code-based redirects) OR go to Settings → URL Redirects (available in some Squarespace plans) and add a new 301 redirect from the old path to the new destination.
- For URL Mappings, enter the rule in the format: /old-url -> /new-url 301 — one rule per line. Save.
- To fix internal links in page content, open the Pages panel, click on the affected page, enter Edit mode, click the broken link, and update or delete it using the link toolbar.
- For navigation links, go to Pages → (the navigation item) and update the URL or remove the link.
- Squarespace does not expose server configuration files, so all redirects must go through URL Mappings or URL Redirects.
- Verify by visiting the old URL — you should be redirected to the correct page automatically.
How to fix page not found on Webflow
- In the Webflow Designer or Dashboard, open your project and go to Project Settings → SEO → Redirects (301).
- Click '+ Add redirect'. Enter the old broken URL path and the new destination path. Save and republish your site.
- To fix internal links in page content, open the Designer, navigate to the page or component containing the broken link, click the linked element, open the link settings panel (chain icon), and update or remove the link URL.
- For CMS collection item links, go to the CMS panel, open the affected collection, and update the internal link fields there.
- For links in global components (navbar, footer), open the component in the Designer, find and update the link.
- Republish your site after all changes, then verify the old URL redirects correctly using a browser or HTTP status tool.
How to fix page not found on Adobe Commerce (Magento)
- Log in to the Adobe Commerce / Magento admin panel and go to Marketing → SEO & Search → URL Rewrites.
- Click 'Add URL Rewrite'. Set Request Path to the old broken URL and Target Path to the new destination. Set Redirect Type to 'Permanent (301)'. Save.
- To fix internal links in CMS pages, go to Content → Pages, open each affected page, and use the WYSIWYG editor to update or remove the broken link.
- For broken links in CMS blocks (headers, footers, widgets), go to Content → Blocks, open the relevant block, and update the link there.
- For links hard-coded in theme template files (PHTML files or layout XMLs), edit them via the file manager or FTP under app/design/frontend/[Vendor]/[theme]/.
- Flush the Magento cache (System → Cache Management → Flush Cache) after making changes, then verify the old URL returns a 301 redirect.
How to fix page not found on Magento Open Source
- Follow the same steps as Adobe Commerce (Magento) above — the URL Rewrites manager and CMS editors are identical in Magento Open Source.
- Go to Marketing → SEO & Search → URL Rewrites → Add URL Rewrite. Set the old path as Request Path, the new destination as Target Path, and Redirect Type as 'Permanent (301)'.
- Update or remove the broken internal links in Content → Pages or Content → Blocks as described above.
- Flush the cache via System → Cache Management after saving all changes.
How to fix page not found on PrestaShop
- In the PrestaShop back office, go to Shop Parameters → Traffic & SEO → URL Redirections (or install the free '301 Redirections' module from the PrestaShop Marketplace).
- Add a new redirect: enter the old URL path and the new destination URL, select '301 Moved Permanently', and save.
- To fix internal links in CMS pages, go to Design → Pages, open the affected page, and edit the link in the TinyMCE editor.
- For links in the theme template files (.tpl files), edit them via FTP or your hosting file manager under /themes/[your-theme]/.
- Clear the PrestaShop cache (Advanced Parameters → Performance → Clear Cache) after making changes.
- Verify the old URL now redirects with a 301 status using a browser or HTTP status checker.
How to fix page not found on Headless / Custom (I build in code)
- In your server or framework configuration (e.g. Next.js next.config.js, Nuxt redirects, Nginx, Apache .htaccess), add a 301 redirect rule from the old URL to the new destination.
- Search your codebase (components, templates, CMS content) for any hard-coded references to the old broken URL and replace them with the correct destination URL.
- If using a headless CMS (Contentful, Sanity, Storyblok, etc.), update or remove the broken links directly in that CMS's content editor.
- Deploy the changes and verify with a curl command: `curl -I https://yourdomain.com/old-url` — you should see `HTTP/1.1 301` and a `Location:` header pointing to the new URL.
- Submit the updated sitemap to Google Search Console to prompt re-crawling.
How to fix page not found on Next.js (Headless)
- Audit all internal `<Link href='...'>` and `<a href='...'>` usages across your components (e.g. `components/`, `app/`, `pages/`) — replace any broken destination with the correct live URL, or remove the link entirely if no replacement exists.
- For every broken URL that must keep working (e.g. old slugs, renamed routes), declare a permanent 301 redirect in `next.config.js` (or `next.config.ts`) using the `redirects()` async function — this is evaluated at the Edge/server before any page render.
- If broken URLs are data-driven (e.g. old product/category slugs stored in a CMS), fetch the redirect map at build time inside `redirects()` or generate them via `getStaticProps`/`generateStaticParams` and issue a `{ redirect: { destination, permanent: true } }` return value from the page itself.
- For catch-all runtime redirects (unknown slugs), add a custom `app/not-found.tsx` (App Router) or `pages/404.tsx` (Pages Router) that uses `useEffect` + `router.replace()` or a server-side lookup to forward the user to the nearest correct page.
- After deploying, re-crawl with a tool (e.g. Screaming Frog, `next build` output warnings) to confirm no internal link still resolves to a 404; also verify the `Location` header returns 301 (not 302) for all redirected paths.
How to fix page not found on Gatsby
- Audit all internal links by running a crawl (e.g. `gatsby build && npx broken-link-checker http://localhost:9000 -ro`) or using a tool like Screaming Frog to produce a definitive list of broken href values and their correct replacement URLs.
- For every broken URL that has a valid replacement, add a 301 redirect entry to `gatsby-config.js` inside the `siteMetadata`-level `createRedirect` calls — or, if using Gatsby Cloud / Netlify / Vercel, export them from `gatsby-node.js` using the `createRedirect` action inside `exports.createPages`.
- For broken links where no replacement exists, find every component or page template that renders the dead href (typically inside `src/components/` or `src/pages/`) and remove or replace the `<Link>` / `<a>` element entirely.
- Create a custom `src/pages/404.js` (Gatsby's built-in 404 page) so that any undiscovered broken links degrade gracefully and are surfaced clearly to users and crawlers.
- Re-run `gatsby build` and repeat the link audit to confirm zero 404 responses remain before deploying.
How to fix page not found on Klaviyo
- In your Klaviyo account, navigate to Content → Templates. Open every email or SMS template that contains links (CTAs, banners, text links, buttons) and use the editor's link inspector to identify any URLs pointing to the broken/404 page.
- For each affected template, click the linked element, open the link editor, and replace the broken URL with the correct, live destination URL. If the page no longer exists, link to the best equivalent page (e.g., a parent collection or the homepage).
- Navigate to Flows and, for every active flow (welcome series, abandoned cart, post-purchase, etc.), open each Email or SMS step, click 'Edit Template', and repeat the same link audit — replacing any broken URLs with the correct ones.
- Navigate to Campaigns and check all Scheduled or previously Sent campaigns: for scheduled campaigns, edit the template and fix broken links before the send date; for sent campaigns, note the broken URLs so you can set up 301 redirects on your storefront (broken links in already-sent emails cannot be retroactively changed, but redirects will recover SEO equity and user experience).
- On your storefront platform (e.g., Shopify Admin → Online Store → Navigation → URL Redirects), create a 301 redirect from each broken URL to its correct replacement page. This ensures that any traffic arriving from previously sent Klaviyo emails lands on a valid page and passes link authority correctly.
- After saving all changes, send a test email/SMS from Klaviyo for each updated template and click every link to verify all URLs resolve with a 200 status and no redirect chains.
Does your site have this issue?
Run a free SEOLZ scan to find page not found — and every other issue — across your whole site in minutes.
Scan my site freeFrequently asked questions
What is Page not found?
A 404 ("Page Not Found") error means a URL on your store no longer exists — but other pages on your site still link to it. Every time a shopper or search engine follows one of those links, they hit a dead end instead of useful content. This can happen when you delete a product, rename a collection, restructure your URLs, or migrate to a new platform without properly redirecting old addresses.
Why does page not found matter?
Search engines like Google treat 404 pages as dead ends: any ranking authority ("link equity") that flowed through those internal links is wasted instead of boosting the destination page. Googlebot also has a limited crawl budget — time spent re-crawling broken URLs is time not spent discovering your new or best-selling pages, which can slow indexing and hurt rankings. For shoppers, clicking a link and landing on a 404 page destroys trust, interrupts the purchase journey, and directly costs you sales. If enough 404s accumulate, Google can downgrade its overall assessment of your site's quality.
How do I fix page not found?
Fix broken internal links pointing to pages that return a 404 error by either removing those links or setting up a 301 redirect from the missing URL to the correct replacement page.
Authoritative references
- SEO Starter Guide — Google Search Central
- Make your links crawlable — Google Search Central