12 SEO Mistakes We Keep Seeing on Small Websites
After enough small-site audits, the same problems keep surfacing. Not exotic technical failures, just a dozen recurring mistakes that quietly cost traffic. The good news about a predictable list is that it's a checklist: run through these twelve, fix the ones that apply, and you've caught most of what actually goes wrong on a small site. Each one below comes with the fix and the specific tool that catches it.
None of these require a developer or a paid platform. They're the things that slip through when a site is built quickly, launched, and then left alone. If you're auditing your own site for the first time, work down the list in order; the early ones do the most damage.
1. Noindex left on after launch
The most damaging and most common. A site is built with a <meta name="robots" content="noindex"> tag or a "Discourage search engines" setting (WordPress has a checkbox for this) turned on during development, and nobody turns it off at launch. The whole site stays invisible to Google.
The fix: view your page source (Ctrl+U), search for "noindex," and remove it from any page you want indexed. In WordPress, uncheck Settings > Reading > "Discourage search engines from indexing this site." Search Console's Pages report also flags this under "Excluded by noindex tag." Our SEO test walkthrough covers how to check.
2. Identical title tags on every page
A CMS ships with a template title like "Home | Brand Name," and every page inherits it. Google sees ten pages that all claim to be about the same thing, and your click-through rate suffers because the listing doesn't describe the page.
The fix: give every page a unique, descriptive title. Run them through the SEO Character Counter to keep each under about 60 characters and confirm they're distinct. Our title tag guide covers writing them.
3. Missing meta descriptions
Not a direct ranking factor, but when it's blank, Google writes its own snippet by grabbing text from the page, usually something worse than you'd write. That snippet is your pitch in search results.
The fix: write a 140-160 character description for each important page. The Meta Tag Generator builds the tag, and our meta description guide covers what makes one earn clicks.
4. Redirect chains
Over a site's life, redirects pile up: page A redirects to B, which was later redirected to C. Each hop wastes crawl budget and leaks a little ranking signal. Left long enough, chains become loops, which break the page with ERR_TOO_MANY_REDIRECTS.
The fix: run key URLs through the Redirect Checker and collapse any chain so the old URL points directly to the final destination in one 301. Our redirect chains guide walks through it.
5. Both www and non-www versions indexed
If example.com and www.example.com both load and both get indexed, Google sees duplicate content and splits your signals between two versions of every page. Same problem with http and https.
The fix: pick one (say https://www) and 301-redirect the others to it. Confirm the redirect resolves in a single hop with the Redirect Checker. Our post on www versus non-www covers the choice.
6. No sitemap submitted
Small sites often skip the sitemap, assuming Google will find everything. It usually will, eventually, but a sitemap speeds discovery and gives you a clean list to submit.
The fix: generate one with the XML Sitemap Generator and submit it in Search Console under Sitemaps. See our XML sitemap guide.
7. Client-side-only meta tags
On some JavaScript frameworks, the title, description, and Open Graph tags are injected by JavaScript after the page loads. Google can render JavaScript, but social scrapers (Facebook, LinkedIn, X) mostly read only the initial HTML, so your share cards come up blank.
The fix: render metadata server-side or use your framework's head-management with SSR. Confirm what scrapers actually see by running the page through the Open Graph Checker, which reads the raw HTML the way a scraper does. If the tags are missing there but present in the browser, they're client-side only.
8. Multiple H1 tags (or none)
Page builders and themes sometimes wrap the logo in an H1, then wrap the page heading in another H1, so a page has two or three competing H1s. Or a slider template ships with no H1 at all.
The fix: run the page through the Heading Analyzer and aim for exactly one H1 that describes the page, with H2s and H3s nested sensibly underneath. Our heading structure guide shows good outlines.
9. Missing canonical tags on parameter URLs
Sites with filters, sorting, or tracking parameters generate URLs like /shop?color=blue&sort=price that serve the same content as /shop. Without a canonical tag pointing back to the clean URL, Google may index dozens of near-duplicate variants.
The fix: add <link rel="canonical" href="https://example.com/shop"> to the parameter versions so they point at the main URL. Our canonical tags guide explains when you need one and when you don't.
10. Broken internal links and orphan pages
Pages get deleted or renamed, and the links to them aren't updated, so visitors and crawlers hit 404s. Worse are orphan pages: pages with no internal links pointing to them at all, which Google struggles to find.
The fix: link every important page from at least one other page with descriptive anchor text, and fix or redirect broken links. Our internal linking guide covers building a sensible link structure.
11. Thin or duplicate content
Small sites sometimes launch with placeholder pages, near-empty category pages, or several pages saying almost the same thing. Google's helpful-content systems suppress thin pages, and duplicates compete with each other.
The fix: consolidate thin pages, flesh out the ones worth keeping, and noindex the utility pages that don't need to rank (internal search results, tag archives with one post). Check Search Console's Pages report for a pile under "Crawled - currently not indexed," which often signals thin content.
12. Ignoring social preview cards
Not a Google ranking factor, so it gets skipped, but every link you share to Slack, LinkedIn, or a group chat shows a preview built from your Open Graph tags. A broken card, no image or a cropped title, costs clicks on every share, and early-stage sites get most of their traffic from shared links.
The fix: run your pages through the Social Media Preview to see how the card renders, and set a proper og:image (an absolute HTTPS URL around 1200x630). Our Open Graph meta tags guide has the standard setup.
Working through the list
If you fix nothing else, fix numbers 1 and 2: a noindex block and duplicate titles are the highest-damage, easiest-to-repair problems on this list. The rest are worth a pass but rarely make or break a site the way an accidental noindex does. For a structured way to run all of these in order, see our free SEO audit walkthrough, and if the site is brand new, SEO for a new website sets the right expectations for month one.
Frequently Asked Questions
What's the most common SEO mistake on small websites?
An accidental noindex left on after launch, closely followed by identical title tags across every page. Both are silent (the site looks fine to a visitor) and both are quick to fix. The noindex keeps the whole site out of Google; duplicate titles waste your listings and hurt click-through. Check for these two first.
How do I know if my site has a noindex problem?
View any page's source (Ctrl+U) and search for "noindex." If you find <meta name="robots" content="noindex"> on a page you want in Google, that's the problem. In WordPress, also check that Settings > Reading > "Discourage search engines" is unchecked. Google Search Console's Pages report lists affected URLs under "Excluded by noindex tag."
Do social preview cards affect my Google rankings?
No, Open Graph and Twitter Card tags aren't Google ranking factors. But they control how your link looks when shared on Slack, LinkedIn, X, and in messages, and a broken card costs you clicks on every share. For small sites that get much of their early traffic from shared links, that's worth fixing even though it doesn't move rankings directly.
Why are both my www and non-www URLs a problem?
If both versions load and get indexed, Google treats them as duplicate content and splits ranking signals between two copies of every page. Pick one as canonical and 301-redirect the other to it, so all signals consolidate on a single version. The same applies to http versus https. Check that the redirect resolves in one hop.
Should I fix all twelve of these at once?
Prioritize. Numbers 1 (noindex) and 2 (duplicate titles) do the most damage and take the least time, so start there. Redirect chains, canonical tags on parameter URLs, and thin content are worth a pass next. The social preview and heading issues matter but rarely make or break a site. Fix in order of impact, not order of ease.