Nobody ever thanks you for technical SEO done well. They only notice it the week a botched migration wipes out six months of rankings. This page is about staying in the quiet first group.
Why one technical fix can lift ten thousand pages
Most SEO tasks help one page. A better title tag, a few new internal links, a sharper intro: all good, all small.
Technical SEO is different because it works on the template, not the page. Fix how one template renders and you can lift ten thousand URLs in a single deploy. That is the whole reason it pays.
It also sits in front of everything else. You can write the best guide on the internet, but if Googlebot cannot crawl it, cannot render it, or cannot tell it apart from three near-duplicate URLs, it will never rank. Content and links are the engine. Technical SEO is whether the car starts.
Crawl, render, index: where pages get stuck
Every URL moves through the same three gates, in order. Miss one and the next two never happen.
Crawl is Google finding the URL through a link or your sitemap and requesting it. A stray Disallow in robots.txt, a page buried five clicks deep, or a run of server errors, and the page stops here.
Render is Google loading the page and running its JavaScript to see the final HTML. If your main content or your internal links only show up after a slow client-side fetch, expect Google to miss them or see them late.
Index is Google deciding the rendered page is worth storing. A leftover noindex, a canonical tag pointing at a different URL, or content that reads like a copy of another page, and you stay out of the index.
"Why is my page not indexed" and "how to fix crawled, currently not indexed" are two of the most common questions people bring to Search Console, and the answer is almost always at one of these three gates. Run a money page through the URL Inspection tool right now and see which one it is stuck at.
Do this first. Open Search Console's Pages report, filter to "Not indexed", and sort by impressions. Any URL that is picking up impressions but is not indexed is money sitting on the table, usually a canonical or thin-content fix you can finish in an afternoon.
Illustrative example
A blog folder that "disappeared" after a redesign
A 400-page content site relaunches on a new theme. Six weeks on, blog traffic is down by roughly a third and the team is sure a core update caught them.
The Pages report tells a calmer story: about 90 blog URLs have moved from "Indexed" to "Crawled, currently not indexed". The new theme had shipped a stray noindex on the paginated blog archive, so Google slowly stopped trusting the pages it linked to.
Remove the tag, resubmit the sitemap, add a few internal links from strong pages. Most of the traffic returns over the following two crawl cycles.
Site architecture: the three-click rule still holds
If an important page takes more than three clicks to reach from the homepage, people treat it as less important. So do crawlers. And structurally, they are right: you have told everyone it does not matter much.
The fix is topic clusters. One pillar page, like this one, links down to every supporting article, and each article links back up to the pillar and across to its siblings. Google reads that shape as "this site owns this topic".
Keep the URLs boring while you are at it. /seo/tech beats /blog/2026/04/post-4471?ref=nav every time: short, lowercase, readable, no dates you will want to hide later. And keep the sitemap honest. It should list only canonical, indexable, 200-status URLs, with no tag pages, no redirects and nothing marked noindex.
On-page SEO: the fundamentals that still move rankings
Title tags
Google rewrites roughly a third of titles anyway, so your job is to write one it does not want to touch. Put the primary keyword near the front, give a reason to click, and keep it under about 60 characters so it does not truncate. One title per page, one H1 that says the same thing in slightly different words.
Heading structure
Use H2s for sections and H3s for subpoints, in order, with no skipped levels. This is not pedantry. A clean hierarchy is exactly what an AI answer engine reads when it decides which single section of your page to lift as a citation.
Internal links
Internal links pass authority and context, and they are the one ranking lever you fully control. Link to every new page from your strongest existing pages on the day you publish. Use anchor text that describes where the link goes. Do not save it for a "link cleanup" pass in six months, because that pass never happens.
Core Web Vitals in 2026: INP replaced FID, and the targets now
Interaction to Next Paint, or INP, replaced First Input Delay as a Core Web Vital in March 2024. Where FID only timed the first interaction, INP measures how fast the page responds to every tap, click and keypress across the whole visit. It is the metric most sites now fail.
Bar lengths show the relative headroom you get, not a shared scale across units.
| Metric | Most common cause | Fastest fix |
|---|---|---|
| LCP | Large hero image or slow web font | Compress, serve AVIF or WebP, preload the LCP image, use font-display: swap |
| INP | Heavy JavaScript blocking the main thread | Break up long tasks, defer third-party scripts, delete unused code |
| CLS | Images, ads or embeds with no reserved space | Set explicit width and height, reserve slots, never insert content above existing content |
Measure the field, not the lab. Lighthouse gives you a lab score in a clean room. Google ranks on field data from real Chrome users, the CrUX report in Search Console. A green Lighthouse score with red field data means real visitors are having a worse time than your test.
Structured data strategy: which schema types are worth adding?
Schema markup does not directly raise rankings. It makes a page eligible for rich results and gives search and AI systems a clean, machine-readable version of what the page says. Add the types that earn a visible result or feed an entity. Skip the rest.
| Schema type | What it can earn | Worth it for |
|---|---|---|
Organization / Person | Knowledge panel, entity connections | Every site, once, sitewide |
Article / BlogPosting | Author, date and headline in results and AI answers | Any blog or news content |
BreadcrumbList | Breadcrumb trail in the result | Any site with a hierarchy |
Product + AggregateRating | Price, stock and stars in results | E-commerce, only with real reviews |
FAQPage | Expandable Q&A, now limited to some sites | Sparingly, only genuine FAQs |
LocalBusiness | Hours, area and contact in local results | Any business with a location |
VideoObject | Video thumbnail and key moments | Pages where video is the main content |
- Mark up only what is visible on the page; hidden or mismatched markup is a manual-action risk
- Use one consistent
@idper entity and cross-reference nodes in a@graph - Validate with the Rich Results Test and watch the Enhancements reports in Search Console
- Do not chase deprecated rich results; check Google's current list before investing
Programmatic SEO: scaling pages without building doorway pages
Programmatic SEO generates many similar pages from a database or template: one per city, product, integration, comparison or use case. It works when every page answers a real, distinct query with genuinely useful, mostly unique content. It fails, and gets filtered or penalised, when the pages are thin templates with a swapped noun.
Before you generate a single page, confirm the demand. If "[service] in [town]" gets no real searches for most towns, you do not need a page for every town. Then find the unique value: real listings, prices, data, photos, reviews. If you cannot fill the template with something specific to that page, the page should not exist.
When you do roll out, stage it. Publish a few hundred pages, watch indexation and engagement for a few weeks, then scale what is working. Dropping fifty thousand near-identical URLs on day one is the fastest way to get the whole set filtered.
Technical SEO checklist
- Every money page returns 200 and sits within three clicks of the homepage
- Search Console's "Not indexed" report has no URLs with real impressions
- One canonical version of the site: HTTPS, www / non-www resolved, no trailing-slash duplicates
- robots.txt blocks nothing you want indexed; sitemap lists only canonical 200s
- Schema in place where it applies: Article, FAQ, Product, Breadcrumb
- LCP under 2.5s, INP under 200ms, CLS under 0.1 on mobile
- Redirect chains collapsed to a single hop; no internal links pointing at redirects







