Technical Diagnostic
A focused review of affected routes, templates, deployment behaviour, crawl signals, CMS behaviour, performance bottlenecks, or code paths, followed by a prioritised fix plan the team can take into delivery.
This is for JavaScript‑heavy sites that need search visibility protected before the problem becomes a recovery job. The page may look complete to users whilst crawlers, indexation systems, and AI retrieval tools receive weaker evidence.
Preventative, engineering‑led SEO for React and Next.js sites where rendered HTML, indexable text, metadata, canonicals, links, structured data, and AI extractability have to be reliable before visibility is damaged.
A React or Next.js page can look complete in the browser whilst crawlers receive thin HTML, delayed links, unstable metadata, weak entity signals, or canonical instructions they cannot trust. I check what the rendered page exposes, how it is discovered, and whether the CMS and codebase can keep those signals stable. "Google can render JavaScript" is not enough evidence, but neither is a full rebuild the automatic answer.
When commercial performance depends on indexable JavaScript pages, I focus on the rendering, crawl, metadata, and migration decisions that protect search visibility and revenue.
A focused review of affected routes, templates, deployment behaviour, crawl signals, CMS behaviour, performance bottlenecks, or code paths, followed by a prioritised fix plan the team can take into delivery.
A short, concentrated engagement for a defined technical SEO, performance, CMS, Vercel, migration, or production issue where the business needs the cause isolated and the first fixes moved quickly.
Senior hands‑on support inside an existing team where architecture, implementation, review, and delivery judgement all matter, especially when the work cannot be handed over as isolated tickets.
Recover organic traffic after a redesign or replatform by isolating what changed in URLs, templates, rendering, metadata, or crawl signals before the drop compounds.
Diagnose why Google is not indexing important JavaScript pages before incomplete HTML, unstable metadata, or routing changes keep them out of search.
Fix sitemap, robots, and crawl‑discovery failures before important Next.js pages stay hidden, blocked, stale, or hard for search engines to trust.
Fix duplicate URLs, bad redirects, and canonical mistakes before search engines and users keep landing on conflicting versions of the same page.
Headless architecture advice before CMS, content model, preview, revalidation, metadata, schema, media, localisation, and editorial ownership decisions become expensive to reverse.
Route‑level performance work for modern front ends where field data, Core Web Vitals, scripts, fonts, images, data loading, or templates are weakening important user journeys.
Recover traffic, crawlability, indexation, and page‑level signals after a launch, redesign, release, migration, or template change alters what search engines can discover and trust.
Plan a move to Next.js by identifying which routes, redirects, rendered output, metadata, CMS workflows, analytics, performance paths, and release controls must survive the cutover.

Why JavaScript pages get crawled but not indexed, covering rendered content, metadata, canonicals, links, noindex rules, quality, and crawl signals.

Compare rendered HTML before and after a migration, checking headings, metadata, links, schema, body copy, media, crawl signals, and launch risk.

Check rendered HTML for JavaScript pages by comparing source and DOM output across metadata, headings, links, schema, content, hydration, and crawlability.

Why view source stopped being enough for modern web checks, and how rendered HTML, hydration, metadata, schema, crawl paths, and client output changed audits.

How client‑side rendering can affect search visibility, and what to check around content, links, metadata, routing, loading states, and fallbacks.

JavaScript rendering and SEO checks for pages that rely on client‑side behaviour, including content, links, metadata, fallbacks, and rendered output.