SEO & Organic Growth
Technical SEO
We make sure search engines can crawl and render your site and index the right URLs. We find issues at the template level and turn them into work your developers can ship.
The problem
New pages go live, and Google either ignores them or shows the wrong URL.
Before a page can rank, it has to be discovered, crawled, rendered if it depends on JavaScript, and judged worth indexing. A break at any step hides the page no matter how good the content is.
The usual misread is blaming crawl budget. Google frames that topic mainly around very large or fast-changing sites. On most smaller sites, the real cause is conflicting signals: a canonical points one way, a redirect another, and internal links a third.
You may recognize this
- Search Console shows more URLs crawled or discovered but not indexed.
- Google picks a different canonical from the one you declared.
- Key content or links appear only after JavaScript runs.
How we work
Log file analysis
We join server logs with crawl exports and sitemaps, verify Googlebot through reverse DNS, and see which templates get crawled and which important URLs never do. Logs can hold personal data, so we use bot records only.
Render diffing
We compare raw HTML against the rendered DOM template by template. If content, links, or canonicals appear only after JavaScript, we work through server-side rendering options with your team.
Signal consolidation
Canonicals, redirects, sitemaps, and internal links align on one preferred URL. Noindexed pages still consume crawling, so each exclusion gets its own call: robots.txt, a 404 or 410, or a merge.
Field performance by template
We track LCP, INP, and CLS through CrUX and real-user monitoring. Fixes usually sit in image loading order, third-party scripts, and long main-thread tasks.
What we deliver
- Combined log and crawl analysis
- Raw versus rendered HTML comparison by template
- Technical backlog with acceptance criteria
- Canonical, redirect, and XML sitemap rules
- Pre-release checklist and monitoring alerts
How we measure
- Indexed coverage of strategic URLs, since only indexed pages can earn visibility.
- Googlebot requests by template, which show where crawling actually goes.
- Field Core Web Vitals by template, which reflect real user experience.
Finding crawl waste on a listings site
Illustrative scenario: new listings on a real estate platform take too long to get indexed. Log analysis shows Googlebot stuck on sort parameters and expired listings. Parameters get restricted in robots.txt, expired listings get a defined rule, and sitemaps are split to favor live inventory.
Common questions
Does crawl budget matter for our site?
If new pages get crawled soon after publishing, probably not. It deserves attention on very large or daily-changing sites, or when many URLs sit as discovered but not indexed.
Our Lighthouse score is high. Why does field data look bad?
Lighthouse is a lab test under one simulated setup. The Core Web Vitals report uses real Chrome users, and INP depends on interactions a standard lab run misses. Act on the field data.
Are React or Next.js bad for SEO?
The framework alone won't hurt you. Google can render JavaScript, but that adds a step and not all bots run scripts, so we favor server-side rendering or static generation.
Before we work together, let's think together.
Requests are answered by the founder.