E-E-A-T Signal: This case study documents a 90-day local SEO engagement completed by BudgetByte for a Sydney-based residential plumbing company. All ranking screenshots and Search Console data were captured during the active engagement.
From Page 8 to Page 1 in 90 Days: Local SEO Case Study for a Sydney Plumber
The Problem with "Just Having an SEO Agency"
The Australian local services market — plumbers, electricians, builders — is hypercompetitive at the top. Page 1 is dominated by large directories (hipages, Tradebusters) and by the few local businesses that have invested in real SEO infrastructure, not recycled agency PDFs.
Our client, a residential plumber operating across the Sydney Inner West, had been paying for SEO for two years. They were on Page 8. Nobody goes to Page 8.
Client Profile
- Industry: Residential & Emergency Plumbing
- Target Market: Sydney Inner West suburbs (Newtown, Marrickville, Leichhardt, Stanmore, Petersham)
- Business goal: Rank on Page 1 for "plumber [suburb]" across 5 core suburbs
- Previous ranking: Page 7–9 for all target keywords
- Monthly leads before engagement: 8
What Went Wrong: The Diagnostic
Before building anything, we ran a full technical and content audit. The findings:
Technical Failures
| Issue | Severity | |---|---| | WordPress site with Elementor page builder | Critical — 5.8s load time on 4G | | No structured data (LocalBusiness schema) | High — Google could not verify service area | | No suburb-specific landing pages | High — one generic "Sydney" page competing for all suburbs | | Mobile Cumulative Layout Shift (CLS) score: 0.38 | Medium — Google threshold is <0.1 | | Missing canonical tags across service pages | Medium — self-cannibalization |
Content Failures
The previous agency had produced 12 blog posts about general plumbing tips. None of them:
- Referenced any specific Sydney suburbs by name
- Contained LocalBusiness schema with address data
- Linked to suburb-specific service pages (which didn't exist)
The agency was producing generic "top of funnel" content for a business that needed bottom-of-funnel, hyperlocal transactional pages.
The BudgetByte Architecture Solution
1. Platform Migration — WordPress → Next.js
We migrated from the bloated WordPress/Elementor setup to a custom Next.js 14 build. This alone had a transformative effect on technical performance:
| Metric | WordPress/Elementor | Next.js | |---|---|---| | Time to First Byte (TTFB) | 1.8s | 0.09s | | Largest Contentful Paint (LCP) | 5.8s | 0.6s | | Total Blocking Time (TBT) | 420ms | 12ms | | Google PageSpeed Score (Mobile) | 31/100 | 97/100 |
2. Suburb-Level Content Silos
We created 5 dedicated landing pages — one for each target suburb — each containing:
- 800+ words of unique, suburb-specific content referencing local landmarks, streets, and infrastructure
- LocalBusiness JSON-LD schema with the suburb postcode in
areaServed - A genuine Google Maps embed centred on the suburb
- Service-specific CTAs ("Book an Emergency Plumber in Newtown")
- Internally linked to all other suburb pages + main service pages
3. Google Business Profile Optimisation
The existing GBP was 40% complete. We:
- Added 23 specific services (rather than just "Plumber")
- Uploaded 14 recent job photos with geo-tagged EXIF data
- Set service area to cover all 5 target suburbs explicitly
- Implemented a weekly GBP post schedule featuring local suburb content
4. Strategic Local Link Acquisition
We identified 8 hyper-relevant local link opportunities:
- Inner West Courier (local news site) — featured a story about summer emergency plumbing preparedness
- Newtown Business Association — directory listing
- Marrickville Council home improvement guides — cited our client's suburb page as a local resource
- 5 local community Facebook group-to-website citations
Total links: 8. All legitimate. All locally relevant.
Results at Day 90
| Keyword | Starting Position | Position at Day 90 | |---|---|---| | Plumber Newtown | 76 | 4 | | Emergency plumber Marrickville | 83 | 7 | | Plumber Leichhardt | 71 | 11 | | Blocked drain Stanmore | 88 | 3 | | Hot water system Petersham | 62 | 9 |
| Business Metric | Before | After 90 Days | |---|---|---| | Monthly organic clicks | 14 | 187 | | Monthly inbound leads | 8 | 43 | | Conversion rate (click-to-call) | 2.1% | 8.4% | | Google Maps impressions (weekly) | 34 | 1,240 |
The Core Lesson
Local SEO is not about writing blog posts about general plumbing advice. It is about proving to Google's local algorithm that your business is physically present, operationally active, and genuinely relevant to a specific geographic area.
That requires:
- A fast website that doesn't bounce users before they see your offer
- Suburb-level pages that contain unique, locally-relevant content
- Structured data that tells Google where you operate
- A Google Business Profile that is treated as a live marketing asset
None of these are complicated. All of them are consistently skipped by agencies that are billing $1,500+/month but delivering the same templated work across dozens of clients.
Want your trade business on Page 1 for your target suburbs? Start with our $299 package and add an SEO retainer — our team handles everything.
BudgetByte Editorial Team
The BudgetByte Editorial Team is made up of senior web developers, local SEO specialists, and conversion rate experts with over a decade of experience scaling Australian trades and service businesses.
