When I first audited DocsAndBiz, the site had solid content but was practically invisible on Google. No structured data, painfully slow load times, crawl issues, and a Core Web Vitals score that was deep in the red.
Four months later, organic traffic had grown by 184%. Here's exactly what I did.
The starting point
Before touching a single tag, I ran a comprehensive technical audit using Screaming Frog, Google Search Console, and PageSpeed Insights.
Here's what the site looked like before:
Organic sessions per month: ~420
Google-indexed pages: 34 out of 61
PageSpeed score (mobile): 41/100
Core Web Vitals: All three metrics failing
Structured data: None
Crawl errors: 27 (mostly broken internal links and missing canonical tags)
Average ranking position: 54.3
Not a disaster, but a long way from where it needed to be.
Step 1 — Fix crawlability first
If Google can't crawl your pages, nothing else matters.
I started by exporting all crawl errors from Google Search Console and cross-referencing them with the Screaming Frog crawl. The issues fell into three buckets:
Broken internal links — 19 pages were linking to URLs that no longer existed. I mapped each broken URL to the correct destination and fixed them in the CMS.
Missing canonical tags — Several category pages and filtered views were generating duplicate URLs without canonical tags, splitting link equity and confusing crawlers. I added rel="canonical" to every affected page pointing to the preferred URL.
Noindexed pages by mistake — 11 pages had noindex set in their meta robots tag, apparently left over from a staging migration. These were valuable content pages. Removing that tag alone got them re-indexed within two weeks.
A pro tip: after fixing crawl issues, always submit the affected URLs manually via the URL Inspection tool in Search Console. Don't wait for the next crawl cycle.
Step 2 — Core Web Vitals and page speed
DocsAndBiz had a mobile PageSpeed score of 41. That's not just bad for SEO — it kills conversions too.
Here's what dragged it down and how I fixed each one:
Largest Contentful Paint (LCP) — was 6.2s, target <2.5s
The LCP element was a hero image with no width/height attributes, loaded as a regular tag with no preloading. I added a for the hero image in the
Cumulative Layout Shift (CLS) — was 0.31, target <0.1
Fonts were loading without a font-display: swap declaration, causing invisible text and layout jumps. I also found several ads and embeds without reserved space. Adding font-display: swap to the font-face declarations and wrapping third-party embeds in fixed-dimension containers brought CLS down to 0.04.
Interaction to Next Paint (INP) — was 380ms, target <200ms
The main thread was being blocked by three large JavaScript bundles loading synchronously in the . I deferred non-critical scripts using the defer attribute and moved analytics initialization to fire after the page load event. INP came down to 140ms.
Step 3 — Schema markup
The site had zero structured data. That meant no rich snippets, no enhanced search appearances, and no eligibility for features like FAQs or breadcrumbs in the SERPs.
I implemented three schema types:
Organization schema on the homepage — name, URL, logo, social profiles, and contact point. This helps Google understand the entity behind the site and can trigger knowledge panel appearances.
BreadcrumbList schema on all inner pages — this enables the breadcrumb trail to appear directly in search results, which increases click-through rate because users can see the site structure before clicking.
FAQPage schema on key landing pages — I worked with the content to surface two to three genuine FAQs per page and marked them up with FAQPage schema. Within six weeks, four pages were showing expanded FAQ results in Google, which significantly increased their SERP real estate.
Step 4 — Internal linking audit
Internal links distribute link equity across a site and help crawlers understand which pages are most important. DocsAndBiz had very little intentional internal linking — most pages were essentially orphaned.
I mapped out the site architecture and identified the 10 highest-value target pages (based on search volume of their target keywords). Then I audited every existing page to find contextually relevant linking opportunities to those 10 pages.
The result: each priority page went from an average of 3 internal links to 14. Ranking improvements for those pages followed within 6–8 weeks.
The results (after 4 months)
MetricBeforeAfterChangeMonthly organic sessions4201,193+184%Indexed pages3458+71%PageSpeed score (mobile)4187+46 ptsCore Web VitalsAll failingAll passing✓Average ranking position54.328.7+25.6Keywords in top 10431+675%
The biggest single win was fixing the noindexed pages — that alone recovered traffic quickly. But the sustained growth came from Core Web Vitals and schema, which took longer to show results but have compounded over time.
Key takeaways
- Technical SEO is the foundation. You can write excellent content and build backlinks, but if crawlers can't access your pages or the user experience is poor, your ceiling is low.
- Core Web Vitals are real ranking signals. I was skeptical at first, but the correlation between fixing CWV on these pages and their subsequent ranking improvement was hard to ignore.
- Schema markup is underused. Most small and medium sites I audit have no structured data at all. It's one of the highest-leverage things you can implement with relatively low effort.
- Fix noindex mistakes before anything else. This is embarrassingly common and can instantly recover traffic you're losing for no reason.
- Internal linking is free and powerful. It's consistently underrated and almost always underdone.
Final thoughts
Technical SEO isn't glamorous, but it's where most sites leak the most value. The work I did on DocsAndBiz didn't require any content creation or link building — it was purely about fixing the foundation.
If you're a developer or SEO analyst working on a site that isn't performing, start with a technical audit. You might be surprised what you find.
Got questions about any of the steps above? Drop them in the comments — happy to go deeper on any of it.
Top comments (1)
Super relatable — I’ve seen the same thing: fixing noindex + crawl issues alone can unlock traffic fast. Most people jump to content, but technical cleanup is honestly the easiest early win.