Search engines have quietly become one of the most demanding users of any website you ship. They arrive thousands of times a day, they never scroll politely, they judge your markup with the patience of a compiler, and they decide, based on signals most visitors never notice, whether your pages deserve to be seen at all. For years the industry treated search optimisation as a marketing concern, something handled downstream by content teams and link builders. That framing is now badly out of date. The majority of the factors that determine whether a modern website can be crawled, understood, and ranked live in the frontend: in the HTML you render, the way you structure routes, the speed at which your JavaScript hydrates, and the semantic meaning you encode into your components. Technical SEO is, in practical terms, a frontend discipline.
This playbook is written for developers who build interfaces and want to understand the machinery underneath organic visibility. It is the kind of reference we at UI Designer reach for when we hand a project over to a client and want it to earn traffic rather than merely exist. The goal here is not to chase algorithm rumours or growth hacks. It is to give you a durable mental model of how crawlers see your work, and a concrete set of techniques you can apply on your next pull request. We will move from first principles, crawling and indexing, through rendering strategy, performance, structured data, and end with an audit checklist you can run against any codebase.
What Technical SEO Actually Is, and Why It Lands on Your Desk
Technical SEO is the practice of making a website easy for search engines to crawl, render, understand, and index, without getting in the way of the humans the site is actually for. It sits apart from content SEO, which concerns what you say, and off-page SEO, which concerns who links to you. Technical SEO is about the plumbing: the response codes, the markup, the metadata, the performance budget, and the architecture that lets the good content you have written get discovered and rewarded.
The reason this work increasingly belongs to frontend engineers is simple. A search crawler is, at heart, an automated client that requests a URL and reads what comes back. Everything it evaluates is produced by the frontend stack. The status code your server returns, the raw HTML in the initial response, the canonical tags in the head, the way your single-page application swaps routes, the size and order of the resources you load, the layout stability of the page as it paints, the alt text on your images, the depth of your heading hierarchy, and the structured data you embed, all of it is a frontend concern. When rankings slip because a framework upgrade started shipping soft 404s, or because a redesign buried the main content behind a client-side fetch, no amount of keyword research fixes it. An engineer does.
There is a helpful way to think about the crawler as a persona. Imagine a visitor on a throttled mobile connection, using an older browser engine, who cannot fill in forms, does not move the mouse, has JavaScript enabled but limited patience, and reads the page the way a wcag-2026" class="internal-link">screen reader would, purely through its semantic structure. Build for that persona and you will satisfy both the crawler and a surprisingly large slice of your real audience.
Crawling and Indexing: The Two-Stage Pipeline
Everything in search begins with two distinct processes that people routinely conflate: crawling and indexing. Crawling is discovery, the crawler finding a URL and fetching its contents. Indexing is comprehension and storage, the search engine parsing that content, understanding it, and deciding to keep it in the searchable index. A page can be crawled but not indexed. It can be indexed without being crawled recently. Diagnosing SEO problems almost always starts with working out which of these two stages has failed.
How discovery happens
Crawlers find URLs in a handful of ways: by following links from pages they already know, by reading your XML sitemap, by processing redirects, and occasionally through external references. This is why internal linking and sitemaps matter so much; they are the roads the crawler drives on. A page with no internal links pointing to it, absent from the sitemap, is an orphan. It may as well not exist.
Large sites also need to respect the idea of a crawl budget. Search engines allocate a finite amount of crawling attention to each site, roughly proportional to its authority and how fresh and fast it is. If a crawler wastes that budget on infinite faceted-navigation URLs, session-id parameters, paginated duplicates, and redirect chains, it has less budget left for the pages that matter. For a ten-page brochure site this is irrelevant. For an e-commerce catalogue with hundreds of thousands of filterable product URLs, crawl budget is the whole game.
Indexing decisions
Once fetched, the search engine decides whether to index. It may choose not to for many reasons: the page is marked noindex, it is a near-duplicate of something already indexed, it is thin or low value, it is blocked by a canonical pointing elsewhere, or the rendered output is effectively empty because the content never loaded. Google Search Console reports these outcomes in its Page Indexing report with statuses such as Crawled currently not indexed and Discovered currently not indexed, and reading those statuses is the fastest way to understand what the crawler thinks of your site.
robots.txt and Meta Robots: Controlling Access and Behaviour
There are two mechanisms for telling crawlers what to do, and confusing them causes some of the most common and damaging SEO mistakes.
The robots.txt file lives at the root of your domain and controls crawling, that is, whether the crawler is allowed to fetch a URL at all. It is a set of directives, not a security boundary; well-behaved crawlers obey it, but it does not stop anyone from requesting the URL directly. Crucially, disallowing a URL in robots.txt does not remove it from the index. If other pages link to a blocked URL, the search engine can still index the address, showing a bare result with no description, because it was never allowed to fetch the page and read the noindex tag inside it. This is the classic trap: to reliably keep a page out of the index, you must let it be crawled and serve a noindex instruction, not block it.
Meta robots directives control indexing behaviour and are read from the page itself, either as a meta tag in the head or as an X-Robots-Tag HTTP header. A tag reading noindex tells the engine not to index the page; nofollow tells it not to pass ranking signals through the page's links; noarchive, nosnippet, and max-image-preview offer finer control over how results appear. Because these live inside the response, the page must be crawlable for them to be seen, which is exactly why they conflict with a robots.txt block.
A short set of rules keeps you out of trouble:
- Use robots.txt to keep crawlers away from infinite spaces, internal search results, and admin areas that would waste crawl budget, but never to hide pages you also want de-indexed.
- Use meta robots noindex to remove pages from search results, and make sure those pages remain crawlable so the directive is actually read.
- Never block your CSS and JavaScript in robots.txt; the crawler needs them to render the page the way a user would, and blocking them can make your site look broken to the algorithm.
- Treat the production robots.txt as critical infrastructure, because a stray Disallow slash line accidentally shipped from a staging config can de-crawl an entire site overnight.
XML Sitemaps: The Map You Hand the Crawler
An XML sitemap is a machine-readable list of the URLs on your site that you want indexed, along with optional metadata such as the last-modified date. It does not guarantee indexing, but it is the most direct way to tell a crawler what exists and what has changed, and it is especially valuable for large sites, new sites with few external links, and sites with pages that are poorly interlinked.
A good sitemap is disciplined. It contains only canonical, indexable, 200-status URLs. It excludes redirects, noindexed pages, and duplicates, because every entry is an implicit claim that says this URL is worth indexing, and filling it with junk erodes trust in the whole file. The lastmod date should be honest and reflect genuine content changes; crawlers learn to ignore lastmod values that update on every page for no reason. A single sitemap file is capped at fifty thousand URLs and fifty megabytes uncompressed, and beyond that you split into multiple sitemaps referenced by a sitemap index.
For frontend teams, the important habit is to generate the sitemap programmatically from the same source of truth that produces your routes, rather than maintaining it by hand. A generated sitemap stays in sync with the site; a hand-written one drifts within a week. Reference the sitemap location in robots.txt and submit it in Search Console so discovery is not left to chance.
Site Architecture and Internal Linking
Site architecture is the shape of your site as a graph of pages connected by links, and it has an outsized effect on both crawling and ranking. The guiding principle is a flat, logical hierarchy: any important page should be reachable from the homepage in as few clicks as possible, ideally three or fewer. Pages buried ten clicks deep are crawled less often and treated as less important, because click depth is a signal the crawler uses to infer priority.
Internal links do three jobs at once. They help crawlers discover pages, they distribute ranking authority, sometimes called link equity, from strong pages to weaker ones, and they tell the search engine what a page is about through the anchor text used to link to it. Descriptive anchor text like womens running shoes is worth far more than click here, both to users and to the algorithm, because it carries topical meaning.
A well-structured site uses a small number of deliberate patterns. Hub or pillar pages cover a broad topic and link out to detailed cluster pages, which in turn link back to the hub, forming a tightly interlinked topical cluster that signals expertise. Breadcrumb navigation reinforces hierarchy and gives crawlers an extra set of contextual internal links. Related-content modules connect pages that would otherwise be siblings with no path between them. The aim is a graph with no orphans, shallow depth, and meaningful anchors.
URL Structure
URLs are read by both humans and machines, and clean URLs help both. A good URL is short, lowercase, readable, and describes the content: a path like /blog/technical-seo-playbook tells you and the crawler what to expect, while /p?id=48213 tells you nothing. Use hyphens to separate words, never underscores or spaces, because search engines treat hyphens as word boundaries and underscores as joiners.
Keep URLs stable. Every time you change a URL you risk losing the ranking signals accumulated against the old one, and you must ship a 301 redirect to carry them across. Avoid stuffing keywords, avoid deep nesting that mirrors an over-engineered folder structure, and be deliberate about parameters. Query strings for sorting, filtering, and tracking multiply your URL space and can create thousands of near-duplicate pages; where they are unavoidable, canonical tags and consistent parameter handling keep the duplication under control. Decide early whether your site uses trailing slashes or not and enforce it with a single redirect rule, because serving the same content at both /about and /about/ is a self-inflicted duplicate-content problem.
Semantic HTML and Heading Hierarchy
This is where frontend craft and SEO overlap most directly. Search engines build their understanding of a page from its HTML structure, so the elements you choose carry meaning far beyond their default styling. A page assembled entirely from div and span elements is a grey fog to a crawler; a page built from header, nav, main, article, section, aside, and footer has a legible skeleton that communicates what each region is for.
Headings deserve particular care because they form the outline of your content. There should be exactly one h1 per page, describing the primary subject, followed by a properly nested hierarchy of h2 and h3 headings that never skips levels for visual reasons. Jumping from an h2 straight to an h4 because it looked right is a common mistake; if you need smaller text, style it, do not misuse the heading level. The heading structure is quite literally how both crawlers and screen readers construct a table of contents for the page, and a clean hierarchy improves comprehension for both.
Beyond headings, use the element that means what you intend. Buttons that do things should be button elements, links that go places should be anchor elements with real href attributes, lists should be ul or ol, and emphasis should be conveyed with the right inline elements rather than styled spans. This discipline is not academic; it is what lets a search engine, an assistive technology, and a browser all agree on what your interface is.
Structured Data and JSON-LD Schema
Semantic HTML tells a crawler the shape of your page. Structured data tells it the meaning of your content in a vocabulary the search engine understands natively, using the shared schema.org vocabulary. It is how you say, in machine terms, this page is a recipe with these ingredients and this cook time, or this is a product with this price and this review score, or this is an article by this author published on this date.
The recommended format is JSON-LD, a block of structured data placed in the head or body as a script of type application ld+json. It is preferred over the older inline microdata approach because it sits separately from your markup, is easy to generate from your data model, and does not entangle your presentation with your metadata. You describe an entity by its type, such as Article, Product, Organization, BreadcrumbList, FAQPage, or LocalBusiness, and its properties as key-value pairs.
The tangible payoff is rich results. Structured data can make your listing eligible for enhanced presentations in search: star ratings, FAQ accordions, breadcrumb trails, event dates, product pricing, and more. These richer listings occupy more space and attract more clicks, so the same ranking position earns more traffic. Structured data must accurately describe visible page content; marking up information that is not on the page, or inflating review data, violates the guidelines and can trigger a penalty. Validate every schema you ship with the Rich Results Test and the schema.org validator, because a single malformed property can invalidate the whole block.
For most sites, a practical starting set covers the essentials:
- An Organization or LocalBusiness schema on the homepage, establishing the entity behind the site, its name, logo, and contact points.
- A BreadcrumbList schema matching your on-page breadcrumbs, which can produce breadcrumb-style search listings.
- An Article or BlogPosting schema on editorial content, with headline, author, and dates.
- A Product schema with Offer and AggregateRating on commerce pages, where the price and availability are genuinely shown.
- An FAQPage schema where you have real question-and-answer content on the page.
Core Web Vitals and Page Speed as a Ranking Factor
Performance is not a nice-to-have; it is a confirmed ranking signal, formalised through Core Web Vitals, a set of user-centred metrics that measure loading, interactivity, and visual stability. Frontend engineers own these metrics almost entirely, because they are determined by how you load and render the page.
There are three current Core Web Vitals, each with clear thresholds:
- Largest Contentful Paint, or LCP, measures loading performance by timing how long until the largest visible element in the viewport renders. A good LCP is 2.5 seconds or less; anything over 4 seconds is poor. LCP is usually dominated by your hero image, main heading, or a large text block, and it is hurt by slow servers, render-blocking resources, and unoptimised images.
- Interaction to Next Paint, or INP, measures responsiveness by observing the latency of user interactions across the whole visit and reporting a representative worst case. A good INP is 200 milliseconds or less; over 500 milliseconds is poor. INP replaced the older First Input Delay metric in 2024 and is far more demanding, because it captures every interaction, not just the first, and long JavaScript tasks that block the main thread are its main enemy.
- Cumulative Layout Shift, or CLS, measures visual stability by quantifying how much content jumps around as the page loads. A good CLS is 0.1 or less; over 0.25 is poor. CLS is caused by images without dimensions, ads and embeds that push content down, and web fonts that reflow text when they swap in.
Hitting these targets is a matter of well-known techniques. For LCP: serve appropriately sized, modern-format images, preload the hero image, eliminate render-blocking CSS and JavaScript, use a content delivery network, and ensure a fast server response under about 800 milliseconds. For INP: break up long tasks, defer non-critical JavaScript, minimise the amount of script you ship, and avoid expensive work in event handlers. For CLS: always set explicit width and height or aspect-ratio on images and media, reserve space for anything that loads asynchronously, and use font-display swap with a matched fallback to prevent text reflow.
Two measurement nuances matter. Core Web Vitals used for ranking come from field data, real users recorded in the Chrome User Experience Report, not from a single lab run in a tool like Lighthouse. Lighthouse gives you a controlled diagnostic, but the scores that affect ranking are the seventy-fifth percentile of real visits over a rolling twenty-eight-day window. Optimise in the lab, but verify in the field through Search Console's Core Web Vitals report.
Mobile-First Indexing
Google predominantly uses the mobile version of a site's content for indexing and ranking, a policy known as mobile-first indexing that is now the default for the entire web. The practical consequence is blunt: the mobile rendering of your page is the version that gets indexed. If your mobile layout hides content that appears on desktop, drops structured data, or ships a stripped-down set of internal links, you are indexing a diminished version of your own site.
The correct approach is responsive design that serves the same HTML to every device and adapts through CSS, ensuring content parity across breakpoints. Verify that the mobile viewport is declared, that tap targets are large enough and not crowded, that text is legible without zooming, and that the same body content, headings, images with alt text, and structured data are present on mobile as on desktop. Separate mobile URLs on an m-dot subdomain are a legacy pattern best avoided in new builds, because they double your maintenance surface and invite content-parity bugs.
Rendering Strategies and Their SEO Implications
No decision affects SEO more than how you render, because rendering determines what actually arrives in the crawler's initial response. This is the area where modern JavaScript frameworks create the most risk and the most confusion, so it is worth being precise.
Client-side rendering
In client-side rendering, or CSR, the server sends a nearly empty HTML shell and the browser builds the page by executing JavaScript. This is the default for a naive single-page application. The SEO risk is significant: the crawler receives an empty shell on first fetch and must queue the page for a second, resource-intensive rendering pass to execute the JavaScript and see the content. Google can render JavaScript, but it does so on a delay and with a budget, so content behind CSR is indexed slower and less reliably, and other search engines and social preview crawlers may not render it at all. For content that needs to rank, pure CSR is the weakest choice.
Server-side rendering
In server-side rendering, or SSR, the server executes the application and returns fully-formed HTML for each request, then the client hydrates it to make it interactive. The crawler gets complete content in the first response, which is ideal for SEO, and users see content faster too. The cost is server complexity and compute, but for dynamic, frequently-changing content that must be indexable, SSR is the reliable default.
Static site generation
In static site generation, or SSG, pages are rendered to HTML at build time and served as static files, often from a CDN edge. This gives the best of both worlds for content that does not change per request: complete HTML in the first response, excellent performance, and trivial scaling. It is the ideal strategy for blogs, marketing pages, documentation, and anything whose content is known ahead of time. Its limitation is freshness, since content only updates when you rebuild, which modern frameworks address with incremental regeneration that rebuilds individual pages on a schedule or on demand.
Hydration and the middle ground
Hydration is the process of attaching JavaScript behaviour to server-rendered HTML so a static page becomes interactive. It is what makes SSR and SSG interactive rather than inert, but heavy hydration is a common source of poor INP, because the browser must download and execute a large bundle before the page responds to input. This tension has driven newer patterns worth knowing: streaming SSR sends HTML progressively, partial or islands hydration hydrates only the interactive parts of a page and leaves static content as plain HTML, and server components render components on the server that never ship JavaScript at all. The direction of travel across the ecosystem is clear: send complete HTML for content, and ship the minimum JavaScript needed for interactivity.
The practical guidance for choosing is straightforward. Prefer SSG for content that can be built ahead of time. Prefer SSR for dynamic content that must be indexable. Avoid pure CSR for anything that needs to rank, and if you have inherited a CSR application, consider prerendering or migrating critical routes to server rendering. Whatever you choose, verify the outcome by fetching your pages the way a crawler does, and by using the URL Inspection tool in Search Console to see the rendered HTML the search engine actually captured.
Canonicalisation and Duplicate Content
Duplicate content is one of the most persistent technical SEO problems, and it rarely comes from plagiarism. It comes from the same content being reachable at multiple URLs: with and without www, over http and https, with and without a trailing slash, with tracking parameters, in printer-friendly versions, and through faceted navigation. When a search engine finds the same content at several addresses, it must guess which one to index, and it may split ranking signals across the duplicates or pick the wrong version.
The canonical link element is the primary tool for resolving this. Placed in the head, a canonical tag names the preferred URL for a piece of content, telling search engines to consolidate signals onto that version. Every indexable page should carry a self-referencing canonical as a baseline, and duplicate or parameterised variants should canonicalise to the primary URL. The canonical is a strong hint rather than an absolute directive, so it must be consistent with your other signals: do not canonicalise to a URL that is itself noindexed, blocked, or redirected, and make sure your internal links, sitemap, and canonicals all point at the same preferred version. Where content genuinely moves, a 301 redirect is stronger than a canonical because it is a directive, not a hint, and it forwards both users and ranking signals. Choose one host and one protocol, https with a consistent www policy, and redirect everything else to it.
HTTPS and Security
HTTPS has been a confirmed, if lightweight, ranking signal for years, and it is now simply the baseline expectation for any credible site. Beyond the marginal ranking benefit, browsers mark non-secure pages as Not Secure, block certain features on insecure origins, and increasingly refuse mixed content where an https page loads http resources. Every production site should serve entirely over https with a valid certificate, redirect all http traffic to https with a 301, and ideally enable HTTP Strict Transport Security so browsers refuse to connect insecurely at all. Mixed-content warnings, where a secure page pulls in an insecure image or script, both undermine trust and can break functionality, so audit for them after any redesign-checklist-50-steps" class="internal-link">migration. Security and SEO reinforce each other here: a fast, secure, correctly-configured server is exactly what both users and crawlers reward.
Image SEO and Alt Text
Images are often the heaviest assets on a page and a frequent cause of poor LCP, so image optimisation is both a performance and an SEO concern. The essentials are to serve images in modern formats such as WebP or AVIF, which are dramatically smaller than JPEG and PNG at equivalent quality; to size them responsively so a phone does not download a two-thousand-pixel-wide hero; to set explicit dimensions to prevent layout shift; and to lazy-load images below the fold while eagerly loading the LCP image. A responsive image setup with correctly configured srcset and sizes attributes can cut image payload by more than half on mobile.
Alt text serves two masters. For wcag-2026" class="internal-link">accessibility, it is the description a screen-reader user hears in place of the image, and for SEO, it is how a search engine understands what an image depicts, which feeds both web search and image search. Good alt text is a concise, accurate description of the image in context, not a dumping ground for keywords. Decorative images that carry no information should have an empty alt attribute so assistive technology skips them, while meaningful images should be described as you would describe them to someone who cannot see the screen. Descriptive file names help too; a file called blue-running-shoe.webp is more useful than one called img4837.webp. This is a clean example of the deeper theme running through this playbook: the accessible choice and the SEO choice are usually the same choice.
The Accessibility and SEO Overlap
It is worth making that overlap explicit, because understanding it lets you do two jobs with one effort. Search crawlers and assistive technologies consume a web page in strikingly similar ways. Neither can see the visual design; both rely on the underlying semantic structure to understand the page. A wcag-2026" class="internal-link">screen reader navigates by headings, landmarks, links, and alt text; a crawler parses the very same signals to understand hierarchy and meaning. Descriptive link text helps a screen-reader user deciding whether to follow a link, and it helps a crawler understand the destination. Proper heading order builds a navigable outline for assistive technology and a content model for search. Form labels, language attributes, and logical reading order serve both audiences.
This is why teams that build accessibly tend to rank well without trying, and why treating wcag-2026" class="internal-link">accessibility as a checkbox exercise misses the point. When you invest in semantic markup, keyboard-navigable interactions, meaningful alt text, and a clean document outline, you are simultaneously building for the human who uses a wcag-2026" class="internal-link">screen reader, the human on a slow phone, and the crawler that decides your visibility. The three rarely conflict, and designing for all of them at once is simply good engineering.
A Practical Technical SEO Audit Checklist
Theory is only useful if it turns into a repeatable process. What follows is a checklist you can run against any site, grouped by concern. It is deliberately concrete, and most items are verifiable in Search Console, a browser's developer tools, or a crawler like Screaming Frog.
Crawling and indexing
- Confirm robots.txt allows crawling of CSS and JavaScript and does not accidentally block important sections.
- Verify that pages you want indexed return a 200 status and are not carrying an unintended noindex tag.
- Check the Page Indexing report in Search Console for spikes in Crawled currently not indexed, Discovered currently not indexed, and soft 404 statuses.
- Ensure an XML sitemap exists, contains only canonical indexable URLs, is referenced in robots.txt, and is submitted in Search Console.
- Hunt down redirect chains and loops, and collapse them to a single 301 hop.
Architecture and URLs
- Confirm important pages are within three clicks of the homepage and that no orphan pages exist.
- Check that URLs are readable, lowercase, hyphen-separated, and stable, with a consistent trailing-slash and www policy enforced by redirects.
- Verify internal links use descriptive anchor text and that breadcrumbs are present where hierarchy is deep.
Markup and structured data
- Validate that every page has exactly one h1 and a heading hierarchy that never skips levels.
- Confirm semantic landmark elements are used for header, navigation, main content, and footer.
- Validate all JSON-LD structured data with the Rich Results Test and confirm it describes visible content only.
- Check that titles and meta descriptions are unique, descriptive, and within sensible length limits.
Performance and mobile
- Measure Core Web Vitals from field data in Search Console, targeting LCP under 2.5 seconds, INP under 200 milliseconds, and CLS under 0.1 at the seventy-fifth percentile.
- Diagnose with Lighthouse, but treat lab numbers as guidance rather than the ranking signal.
- Confirm content parity between mobile and desktop, a declared viewport, legible text, and adequately sized tap targets.
- Verify images use modern formats, responsive sizes, explicit dimensions, and appropriate lazy or eager loading.
Rendering, canonicalisation, and security
- Inspect the rendered HTML a crawler receives using URL Inspection, and confirm the main content is present without requiring client-side execution to appear.
- Confirm the rendering strategy suits the content: SSG or SSR for anything that must rank, never pure CSR.
- Check that every indexable page has a correct, consistent canonical tag and that canonicals, internal links, and the sitemap all agree on the preferred URL.
- Verify the entire site is served over https with a valid certificate, http redirects to https, and there are no mixed-content warnings.
- Confirm images and interactive elements carry appropriate alt text and accessible names, closing the accessibility and SEO loop in a single pass.
Bringing It Together
The through-line of everything above is that technical SEO is not a separate specialism bolted onto a finished build. It is a property of well-engineered frontend work. A site that renders complete HTML quickly, structures its content semantically, keeps its URLs clean and canonical, describes its meaning with structured data, hits its Core Web Vitals targets, and works as well for a wcag-2026" class="internal-link">screen reader as for a crawler, is a site that search engines can understand and are inclined to rank. None of these are exotic techniques. They are the same fundamentals that make a site fast, accessible, and maintainable for the humans who use it.
That alignment is the encouraging part. You do not have to choose between building a great interface and building one that ranks. The habits that produce durable organic visibility, semantic markup, disciplined performance, thoughtful architecture, and genuine wcag-2026" class="internal-link">accessibility, are the same habits that define good frontend engineering. At UI Designer we treat these concerns as inseparable from the craft of building interfaces, because the best-designed page in the world earns nothing if no one can find it. Treat the crawler as one more user with real needs, build for it deliberately, and run the checklist above on every project, and technical SEO stops being a mysterious marketing lever and becomes what it always was: careful, considerate frontend work.
Frequently Asked Questions
Frequently Asked Questions
- What is the difference between technical SEO and content SEO?
- Technical SEO focuses on crawlability, indexability, site speed, structured data, and rendering—ensuring search engines can access and understand your content. Content SEO focuses on keyword research, content quality, topical authority, and matching user intent.
Frequently Asked Questions
- How often should I run a technical SEO audit?
- Run automated checks (Lighthouse, Search Console) weekly. Do a comprehensive manual audit quarterly, or after major site changes (redesign, migration, CMS switch).
Frequently Asked Questions
- Can JavaScript frameworks hurt SEO?
- Not if implemented correctly. Use Server-Side Rendering (SSR) or Static Site Generation (SSG) for content that must rank. Avoid pure Client-Side Rendering (CSR) for indexable pages. Verify with Google's URL Inspection tool.
Frequently Asked Questions
- What Core Web Vitals matter most for SEO?
- All three are ranking signals: LCP (loading) ≤2.5s, INP (interactivity) ≤200ms, CLS (visual stability) ≤0.1. Prioritize LCP first as it's often the easiest to improve and has the biggest user impact.
Frequently Asked Questions
- Do I need structured data on every page?
- Add relevant schema to every indexable page type: Article/BlogPosting for content, Product for e-commerce, FAQPage for FAQ sections, BreadcrumbList for navigation, Organization for homepage. Don't add irrelevant schema.
Frequently Asked Questions
- How do I fix a sudden traffic drop after a redesign?
- Check Search Console for crawl errors, compare old vs new URLs, verify 301 redirects are in place, ensure robots.txt allows crawling, confirm canonical tags point correctly, check Core Web Vitals haven't regressed.

