Technical SEO: the unglamorous work everything else depends on
Technical SEO means ensuring search engines can find, crawl, render, index and quickly serve every page you want visible. It is the least visible and most decisive pillar — most sites that "can't rank" have a technical fault.
What does technical SEO cover?
Technical SEO covers everything that determines whether a search engine can successfully access and understand your pages. In practice it is five areas: crawlability, indexability, rendering, performance, and structured data — plus site architecture, which determines how crawl budget flows through the site.
It is unglamorous by design. None of it is a content decision, and none of it produces a launch announcement. But every other SEO activity is downstream of it — a beautifully written page that is not indexed earns nothing, however much authority points at it.
Indexability
Should it be indexed, and is it? noindex directives, canonical errors, duplicate content, soft 404s, conflicting signals.Rendering
Does the crawler see the finished page? JavaScript dependence, lazy loading, content behind interaction, client-side routing.Performance
Core Web Vitals — LCP, INP and CLS — plus the underlying causes: server response time, image weight, render-blocking resources, layout shift.Architecture
Does internal linking distribute authority sensibly? Depth, orphan pages, breadcrumbs, URL structure, faceted navigation on ecommerce.How does crawling and indexing actually work?
Google's process has distinct stages, and conflating them is the source of much confusion. Understanding which stage has failed tells you what to fix.
| Stage | What happens | Common failure | Where to diagnose |
|---|---|---|---|
| Discovery | URLs are found via links, sitemaps, past index and external references | Orphan pages never discovered | Search Console URL Inspection, sitemap coverage |
| Crawling | The crawler requests the URL and receives a response | 5xx errors, timeouts, blocked by robots.txt, low crawl budget | Server logs, crawl stats report |
| Rendering | JavaScript is executed and the final DOM is produced | Content invisible until interaction, hydration errors, blocked resources | URL inspection live test, rendered HTML vs source |
| Indexing | The page is parsed, understood and stored | noindex, canonical pointing elsewhere, duplicate detection, thin content | Page indexing report, coverage status |
| Serving | Indexed pages are selected and ranked for a query | Weak relevance, poor authority, poor experience signals | Performance report, manual actions |
Note the distinction this creates: a page can be crawled perfectly and still be excluded from the index, and a page can be indexed and still never appear. "My pages are not indexed" and "my pages do not rank" are different problems with different fixes.
Which Core Web Vitals matter and how much?
Three metrics make up Core Web Vitals, assessed at the 75th percentile of real user measurements over 28 days. The thresholds are: LCP good at 2.5 seconds or less, INP good at 200 milliseconds or less, and CLS good at 0.1 or less.
| Metric | Measures | Good | Needs improvement | Poor |
|---|---|---|---|---|
| LCP — Largest Contentful Paint | How long until the main content renders | ≤ 2.5s | 2.5–4.0s | > 4.0s |
| INP — Interaction to Next Paint | How responsive the page feels when tapped | ≤ 200ms | 200–500ms | > 500ms |
| CLS — Cumulative Layout Shift | How much content jumps around while loading | ≤ 0.1 | 0.1–0.25 | > 0.25 |
On ranking impact, be sceptical of anyone claiming a large effect. Core Web Vitals are a relatively small ranking signal compared with relevance and authority, and Google has said as much. The stronger case for fixing them is conversion: a slow site loses a meaningful share of visitors before they ever see what you are selling. Fix them for that reason first.
INP deserves particular attention
INP replaced First Input Delay in March 2024 because FID only measured the latency of the first interaction and ignored everything that happened after it. INP measures the full latency of every interaction throughout the page life, which is why it correlates much better with how responsive a site actually feels. The usual causes are long JavaScript tasks on the main thread, oversized third-party scripts, and hydration work blocking the first tap.
Does JavaScript hurt my SEO?
JavaScript does not inherently hurt SEO, but it adds a failure mode that HTML does not have: the crawler must execute your code before it sees the page. If anything in that chain breaks — an error, a blocked resource, a slow API response — the crawler sees an empty shell and may index nothing.
The practical rules are unexciting but effective. Server-render or statically generate anything that must be indexed: primary content, navigation, internal links, and structured data. Reserve client-side rendering for genuinely interactive authenticated areas. Never lazy-load content that is the main text. And ensure critical content renders without requiring a user interaction — a tab that reveals text on click is invisible to a crawler.
The expensive mistake is a full client-side rendering framework on a site whose content does not need one. You accept rendering risk, hydration cost and INP problems in exchange for an application experience your content site does not need.
How do you migrate without losing traffic?
Site migrations are the most common cause of catastrophic, self-inflicted SEO damage, and they are almost entirely preventable. The risk concentrates in URL changes: every page that moves without a redirect chain loses its accumulated signal and its backlinks.
- Map every URL before you move anything. A full export of existing URLs against their equivalents in the new structure. Anything without a match is a decision you have to make deliberately.
- Redirect 301, one to one. Every old URL that has a genuine equivalent gets a single permanent redirect to the new one. Do not redirect everything to the homepage — this is the most common and most damaging error, and it wastes the authority you were trying to preserve.
- Keep redirects forever. Not six months. Anyone who has removed redirects has regretted it.
- Freeze the old structure early. The longer you keep both structures, the more crawl budget you split between them.
- Verify in staging with a crawler that executes JavaScript. Then verify again in production within 48 hours, checking status codes, canonical tags and rendered output rather than assuming.
- Monitor for at least eight weeks. Coverage, redirect errors and indexed-page count reviewed weekly, with a rollback plan agreed in advance.
Why server logs matter more than any tool
Third-party SEO tools crawl your site from outside, with a synthetic user agent and their own request pattern. That is useful for spotting obvious issues and nearly useless for understanding what Googlebot actually does.
Server logs record every request your site received, including the ones no audit tool can see: how often Googlebot visits, which URLs it ignores repeatedly, how long it spends on your largest pages, and how much of its activity is wasted on parameters and duplicates. Crawl budget problems are essentially invisible without them.
The SEO audit checklist covers the checks you can run yourself, and the Core Web Vitals guide goes deeper on performance.
Related services
Frequently asked questions
How do I know if I have a technical SEO problem?
Does site speed affect rankings?
What is INP and why did it replace FID?
Do I need a sitemap?
Should I block low-value pages or noindex them?
How often should a technical SEO audit be repeated?
What is crawl budget and do I need to worry about it?
Can technical SEO fixes be done without developer resource?
Need technical seo for your business?
Get a free, no-obligation review of where you stand today on technical seo — and the three changes that would move the number that matters. No pitch deck.
Book a free 30-minute audit