A five-star business that is invisible at the moment of need
Family 1st Service Plumbing is real, licensed, and genuinely well-regarded: 5.0 stars across 41 Google reviews and 27 Yelp reviews, an A rating from the BBB, and a current, active C-36 plumbing licence with a $25,000 bond and no disciplinary history. Customers name Andy personally in review after review. That is a business other companies spend years trying to build.
Almost none of it is reachable when a stranger in Santa Rosa needs a plumber. We ran three non-branded searches — best plumber, emergency plumber, water heater repair — and Family 1st was named in none of them. Searched by name, it appears everywhere. The reputation is strong; the distribution is missing.
[ Data verified ] Live crawl of all 21 pages under desktop, iPhone & Googlebot-smartphone agents · Google PageSpeed Insights API · Google Places API · Search Atlas keyword API & Site Explorer · CSLB licence 1050780 · BBB · Yelp · live Google SERP & Maps · competitor XML sitemaps — pulled August 21, 2026.
The headline opportunity. Three moves drive most of the upside: (1) make the website agree with Google about when you are open — your profile says open 24 hours, your website says Monday–Friday, 10 to 8; (2) make the phone number tappable and put it where a panicking homeowner sees it first — today there is not one tel: link on the site and the number sits a full screen below the fold on mobile; (3) give Google and the AI engines a machine-readable identity, in a market where exactly one competitor has bothered.
The seven questions, answered
- Why aren't more calls coming in? Because the site is invisible in non-branded search, and the visitors who do arrive on a phone cannot tap to call.
- Biggest opportunity? The local pack. It is held by companies with 143 to 993 reviews — not 5,000. Super Service Plumbing holds a slot with 143. You have 41 at a higher rating.
- Biggest threat? Six competitors published content in the last 20 days; two published the same day we ran this. You have published nothing, ever.
- Where is revenue left on the table? All three sewer pages — the highest-ticket work you sell — are orphaned. No visitor and no crawler can reach them by clicking.
- Fix first? The hours contradiction. Google tells customers you are open 24 hours; your website tells the same customer you closed at 8.
- Immediate AI advantage? Only one competitor in this market publishes
Plumberschema and only two publish FAQ schema. The AI-answer layer is genuinely unclaimed. - What would Bonsai prioritise? Phase 1 of the roadmap in §14 — all of it ships inside 30 days.
An owner-operator with proof, and no way to show it
Verified: CSLB licence 1050780, classification C-36 Plumbing, current and active, issued 28 February 2019 and valid to 28 February 2027. Sole ownership, qualifier Andrew Charles Moody. $25,000 bond with American Contractors Indemnity. No disciplinary actions disclosed. Records address 539 Saint Mary Drive, Santa Rosa, CA 95409. Residential and light commercial: plumbing repair, drain cleaning, water heaters and tankless, sewer repair, replacement and inspection, leak detection, repiping, gas lines, septic, water filtration, and remodels.
That review describes the business Family 1st actually is. The website describes a different one — "Monday – Friday 10 AM – 8 PM", printed at the top of every page. Yelp's own review highlights show "I spoke to Andy and he sent over his son Dustin…" appearing in 17 separate reviews. The personal, responsive, family-run service is the product, it is what customers write about — and the website never mentions Andy once outside of an embedded testimonial.
Three assets competitors cannot copy
- A 5.0 rating across 68 reviews. Highest in the market. Curoso, Holman, Super Service, 707 and Langston also hold 5.0 — but the rating is the ceiling everyone is trying to protect, and Family 1st is already there.
- The owner answers the phone. Reviews repeatedly describe Andy personally diagnosing, scheduling and showing up — including nights and weekends. The market leaders route through dispatch.
- A clean, active licence and bond, already verified. Google Local Services Ads require exactly this. Family 1st qualifies today and is not enrolled.
Recommended positioning: "The plumber who picks up — licensed, 24/7, Sonoma County." Lead with the owner-operator responsiveness the reviews already prove. Let emergency plumber, sewer repair and the city terms be the search doors into it. Competing on "wide array of plumbing services" is competing on the one axis where 2,000-review operators win.
Two things to correct, not defend. The site claims "decades of experience" — no source we could find corroborates it, and the licensed business dates to February 2019. Say something true and specific instead. Separately, the licence certifies no employees while 17 reviews describe Dustin running calls, and a 2022 corporation exists that does not hold the licence. Both are worth a conversation with your own advisor. Needs confirmation
An easy market nobody told you was easy
The head term in this market has a difficulty score of 10 out of 100 and a cost-per-click of $78.64. Competitors are paying close to eighty dollars for a single click on a keyword rated easy to rank for organically. That combination — high commercial value, low ranking difficulty — is unusual, and it is the core of the opportunity.
| Keyword | Vol/mo | CPC | Difficulty | Current rank |
|---|---|---|---|---|
| plumber santa rosa | 1,900 | $78.64 | 10 · Easy | Not ranking |
| plumbers santa rosa ca | 1,900 | $78.64 | 3 · Easy | #33 |
| plumbing santa rosa ca | 1,900 | $66.95 | 3 · Easy | #14 |
| emergency plumber santa rosa | 30 | $97.25 | 4 · Easy | Not ranking |
| plumber petaluma | 390 | $97.91 | 5 · Easy | Not ranking |
| plumber sonoma ca | 320 | $67.32 | 7 · Easy | Not ranking |
| plumber rohnert park | 170 | $76.37 | 3 · Easy | Not ranking |
| plumber cotati | 170 | — | 3 · Easy | Not ranking |
| plumber sebastopol | 110 | $76.44 | 1 · Easy | Not ranking |
| plumber healdsburg | 70 | $43.09 | 5 · Easy | Not ranking |
| plumber sonoma county | 70 | $53.46 | 5 · Easy | Not ranking |
| drain cleaning santa rosa | 50 | $78.73 | 3 · Easy | #41 |
| water heater repair santa rosa | 50 | $64.82 | — | #30 |
| plumber windsor ca | 40 | $72.72 | 8 · Easy | Not ranking |
| leak detection santa rosa | 40 | $40.06 | 5 · Easy | #25 |
| backflow testing santa rosa | 20 | $97.76 | 15 · Easy | Not ranking |
[ Data verified ] Search Atlas keyword API, August 21, 2026. US monthly averages; difficulty 0–100. Current rank from Search Atlas Site Explorer.
The "near me" layer — won through the Google profile, not the website
These searches resolve to wherever the customer is standing. They are won by the local pack, which is why the Google Business Profile matters as much as the site.
| Keyword | US vol/mo | CPC |
|---|---|---|
| plumber near me | 823,000 | $45.15 |
| emergency plumber near me | 90,500 | $52.53 |
| water heater repair near me | 74,000 | $47.12 |
| drain cleaning near me | 74,000 | $42.31 |
| sewer line repair near me | 60,500 | $44.52 |
| 24 hour plumber near me | 49,500 | $57.32 |
| leak detection near me | 12,100 | $45.63 |
| tankless water heater installation near me | 4,400 | $36.39 |
| plumber open now | 1,300 | $64.62 |
What that demand is worth
Adding the city-scoped commercial terms above — counting the three Santa Rosa head variants once, since they share one results page — gives 3,540 searches a month in Family 1st's own service territory, representing roughly $255,000 a month, or $3.06 million a year, of advertiser-paid demand.
Read that figure correctly. It is what the market pays Google for those clicks — a measure of commercial value, not revenue Family 1st would capture. What it establishes is that this is not a low-value market, and the terms carrying that value are rated easy.
We have deliberately not published a revenue projection. Average ticket value, close rate and current call volume are Andy's numbers, not ours. We would rather show verified demand than an invented forecast. Needs Andy's numbers
Twenty-one pages against four hundred and ninety-three
We re-counted every competitor's page total directly from their own XML sitemap. The gap is not marginal.
| Company | Total pages | City pages | Blog posts | Last post |
|---|---|---|---|---|
| John Owens Services | 493 | 110 | 259 | Aug 21, 2026 same day |
| Moore Home Services | 423 | 36 | 275 | Aug 6, 2026 |
| Curoso Plumbing | 415 | 63 + neighbourhoods | 332 | Jul 21, 2026 |
| Ongaro & Sons | 393 | 1 | 115 + 190 FAQ pages | Jul 28, 2026 |
| Super Service Plumbing | 167 | 73 | 58 | Aug 12, 2026 |
| Holman Plumbing | 148 | 13 | 99 | Aug 21, 2026 same day |
| Family 1st Service Plumbing | 21 | 0 | 0 | never |
[ Data verified ] Page counts independently re-counted by Bonsai from each competitor's sitemap_index.xml, August 21, 2026.
Curoso targets Santa Rosa neighbourhoods — Rincon Valley, Roseland, Bennett Valley, Fountain Grove, Oakmont, Mark West, Downtown, Southwest. Family 1st does not target a single city beyond Santa Rosa: the words "Rohnert Park", "Petaluma", "Windsor", "Healdsburg", "Sebastopol", "Sonoma" and even "Sonoma County" appear zero times across all 21 pages, while "Santa Rosa" appears 113 times.
The review gap — and why it is smaller than it looks
| # | Company | Rating | Google reviews | |
|---|---|---|---|---|
| 1 | Moore Home Services | 4.8 | 2,172 | |
| 3 | Ongaro & Sons | 4.8 | 1,226 | |
| 4 | Mr. Rooter Sonoma County | 4.9 | 993 | Local pack |
| 9 | Curoso Plumbing | 5.0 | 401 | Local pack |
| 10 | John Owens Services | 4.9 | 373 | Median |
| 12 | Holman Plumbing | 5.0 | 202 | |
| 14 | Super Service Plumbing | 5.0 | 143 | Local pack |
| 18 | United States Plumbing | 4.9 | 69 | Maps top 8 |
| 20 | Family 1st Service Plumbing | 5.0 | 41 | Last |
[ Data verified ] Live Google Maps and Local Services Ads reads, August 21, 2026. Full ranked list of 20 in the source data.
The entry bar is not two thousand reviews. Super Service Plumbing holds a local pack slot on both money queries with 143 reviews and 167 pages — not on volume, but on the tightest local and service page architecture and the most precise schema in the market. United States Plumbing sits in the Maps top eight with 69. Family 1st needs roughly +30 to +100 reviews to be numerically inside the ranked set. At a 5.0 rating, the quality is already there — only the count is missing.
Where this market is soft
- The AI-answer layer is unclaimed. Of every competitor homepage parsed, exactly one publishes the specific
Plumberschema type and only two publish FAQ schema. - Ongaro & Sons has 1,226 reviews and one city page. Every "plumber in [city]" query across Sonoma County is a hole in the third-largest player's coverage.
- Rooter Man has 628 reviews and no crawlable website — a JavaScript app with no XML sitemap and no server-rendered service, city or FAQ content. They rank on Google profile strength alone; every organic and AI query they touch is uncontested.
- Moore Home Services has 2,172 reviews and no
AggregateRatingmarkup at all. The market leader leaves its entire rich-result and AI-citation surface on the table. - The organic lane below the pack is thin. The pack and ad leaders barely rank organically. Positions two through nine are small sites — Maples, Economy, Christopher Robin's, Elite, GAC, Redwood. Nobody strong is defending it.
- Only six of roughly thirteen parseable competitors publish a licence number — in a trade where the licence is the trust primitive.
- The commercial lane is empty. Mr. Rooter is the only operator with winery, restaurant, grease-trap and backflow pages. In wine country, that is a large uncontested segment.
Strong trade business, absent digital layer
Strengths
- 5.0 rating across 68 Google + Yelp reviews — highest in market
- Active C-36 licence, $25k bond, no disciplinary history
- BBB rating A
- Live Google review velocity — four of the five most recent are from 2026
- Owner-operator responsiveness customers write about by name
- Correct Google category (Plumber) and 24-hour availability already set
- Server response 0.85s — on par with the pack leaders
- Qualifies for Google Guaranteed today
Weaknesses
- Zero
tel:links across all 21 pages - Website hours contradict the Google profile
- No
LocalBusinessorPlumberschema anywhere - Eight orphaned pages, including all three sewer pages
- No H1 on the homepage; six pages on default titles with no meta description
- 9.2s mobile LCP on a 3.4 MB page
- No analytics, tag manager, call tracking or conversion tracking at all
- Zero city pages, zero blog posts
- Business name appears in four different forms
Opportunities
- Head terms rated easy at $67.32–$97.91 CPC
- Local pack entry at ~143 reviews, not thousands
- Local Services Ads — pay-per-lead, rewards the 5.0 rating
- Eight untouched Sonoma County cities
- AI-answer layer claimed by one competitor
- Commercial / winery segment held by one operator
- Best trenchless content in the market, currently orphaned
- 68 five-star reviews never surfaced on the website
Threats
- Six competitors published content within 20 days; two the same day
- LSA units push all organic results below the fold on money queries
- Every additional month of no tracking is another month of unattributable spend
- Review gap compounds — leaders add volume monthly
- A ranking page already 404s; those rankings decay
- Competitors are building city pages now; the terms get harder
The server is fine. The structure is not.
Worth saying first, because it is unusual: the hosting is not the problem. Time to first byte averaged 0.85 seconds across five cache-busted runs — in line with Curoso (0.87s) and faster than Super Service (1.27s), both local-pack holders. HTTPS is clean, www and non-www resolve correctly to one canonical host, 404s return properly, the sitemap is valid, and Lighthouse scores the technical SEO basics 100/100.
What breaks is everything built on top of it.
| Core Web Vital | Mobile | Desktop | Google "good" |
|---|---|---|---|
| Performance score | 55 | 79 | 90+ |
| Largest Contentful Paint | 9.2 s | 2.6 s | ≤ 2.5 s |
| Speed Index | 9.1 s | 2.7 s | ≤ 3.4 s |
| Time to Interactive | 12.1 s | 2.6 s | — |
| Total Blocking Time | 240 ms | 10 ms | ≤ 200 ms |
| Cumulative Layout Shift | 0.003 Good | 0.039 Good | ≤ 0.1 |
| Page weight | 3,418 KiB | 3,392 KiB | — |
[ Data verified ] Google PageSpeed Insights API, August 21, 2026. Named savings: 132 KiB unused CSS (≈600 ms) and 411 KiB unused JavaScript.
A homeowner standing in an inch of water waits 9.2 seconds before the page shows them anything useful. Layout stability is genuinely good — this is a weight problem, not a design problem, and weight is fixable.
Google has no Core Web Vitals record for this website. The Chrome User Experience Report returned no field data for either mobile or desktop. Google only reports on sites with enough real-user traffic to measure. This is the most honest available read on current visitor volume — and it matches the Search Atlas estimate of roughly zero organic traffic.
Eight orphan pages — 38% of the site is unreachable by clicking
We crawled all 21 pages and mapped every internal link. Thirteen sit in the navigation. Eight receive inbound links from nothing but themselves:
| Orphaned page | Why it matters |
|---|---|
| /sewer-repair/ | 847 words — the longest, best page on the site. Explains trenchless repair properly. |
| /sewer-replacement/ | Highest-ticket job in residential plumbing |
| /sewer-line-inspection/ | Sonoma County sewer-lateral compliance demand |
| /septic-tank-services/ | Rural west county — large under-served segment |
| /remodels/ | Highest-value project work |
| /water-filter-services/ | Recurring-revenue service |
| /bathtub-shower-repair/ | — |
| /sink-installation-repair/ | — |
All three sewer pages are orphaned. Sewer repair and replacement are the highest-ticket work a residential plumber sells. The content exists and is good. No customer and no search engine can reach it by clicking — and Search Atlas confirms the result: /sewer-repair/ ranks for zero keywords.
Three more structural faults
- A 404 page is still holding rankings.
/water-leak/returns HTTP 404, yet Search Atlas still lists it as a ranking URL carrying three keywords. It was deleted without a redirect, and those rankings are decaying. One 301 recovers them. - The homepage's own "ABOUT US" button is broken. The call-to-action directly beneath the homepage About paragraph points to a URL that returns 404. Two navigation items — "Plumbing" and "Water Heaters" — are dead
href="#"links. - Pinch-zoom is disabled. The viewport tag sets
maximum-scale=1, user-scalable=0, a mobile accessibility failure. Seven of eight homepage images have empty alt text, and Lighthouse flags colour-contrast and link-name failures.
[ Data verified ] All findings confirmed under desktop, iPhone and Googlebot-smartphone user agents — all three return byte-identical HTML (76,445 bytes), so nothing here is a dynamic-serving artefact. Security headers absent: no HSTS, X-Frame-Options, CSP or X-Content-Type-Options; x-powered-by discloses PHP 8.3.31.
The most valuable page on the site is running a WordPress default
The homepage has no H1 element at all — zero, confirmed under all three user agents. The single strongest on-page relevance signal is simply missing from the most important page.
Six pages are still on WordPress defaults with no meta description written:
| Page | Title | Meta description |
|---|---|---|
| /emergency-services/ | Emergency Services - Family 1st Service Plumbing | Missing |
| /contact/ | Contact Us - Family 1st Service Plumbing | Missing |
| /remodels/ | Remodels - Family 1st Service Plumbing | Missing |
| /septic-tank-services/ | Septic Tank Services - Family 1st Service Plumbing | Missing |
| /sink-installation-repair/ | Sink Installation & Repair - Family 1st Service Plumbing | Missing |
| /water-filter-services/ | Water Filter Services - Family 1st Service Plumbing | Missing |
/emergency-services/ is the single most valuable page on this website. "Emergency plumber santa rosa" carries a $97.25 cost-per-click — one of the highest in the entire market. That page has no meta description, an unoptimised default title, no 24/7 messaging, and no tappable phone number.
Titles and headlines disagree
| URL | Title targets | H1 actually says |
|---|---|---|
| /plumbing/ | Plumbing | Santa Rosa CA | "About Us" |
| /sewer-replacement/ | Sewer Replacement | Santa Rosa CA | "Sewer Services" |
| /faucet-repair/ | Faucet Repair | Santa Rosa CA | "Faucets" |
| /toilet-repair/ | Toilet Repair | Santa Rosa CA | "Toilets" |
| /water-heater-repair/ | Water Heater Repair | Santa Rosa | "Water Heaters" |
/plumbing/ is the worst case: it is the About page wearing a service page's title. Every page also carries the identical heading skeleton — service heading, "Call now!", "Testimonials" — with the same single testimonial repeated site-wide. Body content runs roughly 200–700 words per page once navigation is excluded. There is no FAQ content, no pricing guidance, and no blog: the sitemap index contains one page sitemap and no post sitemap at all.
What that produces
The one keyword ranking in the top ten is the brand term "family first plumbing" — and even that sits at #6. The site also ranks for drain cleaning santa rosa fl (Florida) and clogged sink repair grizzly flats — a town 150 miles away in El Dorado County. That is what no geographic targeting looks like.
[ Data verified ] Search Atlas Site Explorer, August 21, 2026. Position distribution: 0 in 1–3 · 1 in 4–10 · 7 in 11–20 · 7 in 21–30 · 11 in 31–40 · 10 in 41–50 · 6 in 51–100.
Backlinks
240 backlinks from 111 referring domains — and effectively all of it is scraper and link-farm noise at Domain Authority 1–13: seol.store, takes.sbs, wants.cfd, backlinkhouse.com, backlinksbank.com, distrilist.eu (42 links on its own), egyptiandirectory.com. There is no editorial link equity here.
The good news on links. This is auto-generated scraper noise, not a bought-link footprint — Google routinely ignores it. On this evidence nothing needs disavowing. It simply means authority gets built from zero, cleanly.
Nothing on this website tells a machine what business this is
We ran four searches on August 21, 2026 to test what AI-driven and answer-style results return.
| Query | Family 1st appears? | Who does |
|---|---|---|
| "best plumber Santa Rosa CA" | No | Benjamin Franklin, Devoto, Christopher Robin's, SP Plumbing, MTZ |
| "emergency plumber Santa Rosa 24 hour" | No | Mr. Rooter, Holman, Curoso, Super Service, Elite, PRO Plumbers, Mike's |
| "who repairs water heaters in Santa Rosa" | No | Roto-Rooter, Fast Water Heater, Moore, Elite, Economy, Bragg |
| "Family 1st Service Plumbing reviews" | Yes — strongly | Yelp, Angi, BBB, HomeAdvisor, Yahoo Local all return it |
Verdict: INVISIBLE for every non-branded query. VISIBLE by name. The entity is known and well-corroborated. It is simply never retrieved when someone describes a problem instead of naming a company.
Why — the machine-readable layer is empty
Every one of the 21 pages emits exactly three schema types: WebPage, BreadcrumbList, WebSite — the Yoast SEO defaults, untouched.
There is no LocalBusiness. No Plumber. No Organization. No Service. No FAQPage. No AggregateRating. No PostalAddress. No GeoCoordinates. No openingHoursSpecification. No areaServed. No telephone number in structured data anywhere.
A language model has to infer from prose that this is a plumbing company in Santa Rosa. Its competitors do not make it guess. That is the whole finding — and the fix is one of the cheapest items in this document.
AI Readiness Score: 15 / 100
| Factor | Weight | Score | Evidence |
|---|---|---|---|
| Entity clarity — one unambiguous name | 12 | 2 | Four different names across profile, title, footer, licence |
| Structured data (LocalBusiness / Plumber / Service) | 15 | 0 | Yoast defaults only, all 21 pages |
| NAP machine-readability | 10 | 1 | No address published; phone in prose only, no tel: |
| Service clarity | 10 | 5 | 21 service pages exist, but thin and un-marked-up |
| Geographic clarity | 10 | 1 | "Santa Rosa" ×113; every other city ×0; no areaServed |
| Third-party corroboration | 12 | 7 | Real strength — 5.0/41 Google, 5.0/27 Yelp, BBB A, active licence |
| Review signals machine-readable | 8 | 0 | 68 five-star reviews, zero AggregateRating markup |
| FAQ / answer-shaped content | 10 | 0 | No FAQ content, no FAQ schema |
| Topical authority / content depth | 8 | 1 | 21 pages, 0 posts, vs 148–493 for competitors |
| Authoritative inbound mentions | 5 | 0 | 111 referring domains, all scraper / link-farm |
| Total | 100 | 15 |
[ Methodology ] Weights reflect how retrieval-based AI systems assemble a local-business answer — entity resolution and structured data first, then third-party corroboration, then content depth. Every score ties to a verified observation in this report.
Factor six is the outlier, and it is the reason this is fixable quickly: the reputation is genuinely strong. What does not exist is the machine-readable connection between that reputation and the website. In a market where one competitor publishes Plumber schema and two publish FAQ schema, closing that gap is not a long campaign — it is a build.
Google says you're open 24 hours. Your website says you're closed.
The Google Business Profile exists and is in better shape than the website. We resolved it through the place ID embedded in Family 1st's own review button:
| Field | Value |
|---|---|
| Profile name | "Family First Plumbing" — matches nothing else |
| Rating / reviews | 5.0 / 41 |
| Primary category | Plumber Correct |
| Hours | Open 24 hours, seven days |
| Address | None — service-area business |
| Website linked | http://www.familyfirstplumbing.com/ — the non-canonical variant |
| Photos | 7 |
| Google AI summary | None generated |
[ Data verified ] Google Places API, place ID ChIJxa8jD29HhIARUELPEb41wJE, pulled August 21, 2026.
The hours contradiction
| Source | Hours |
|---|---|
| Google Business Profile | Open 24 hours, every day |
| Website header, every page | Monday – Friday, 10 AM – 8 PM |
| Yelp | Mon/Tue/Thu/Fri/Sat/Sun 6 AM – 12 AM · Wed 6 AM – 5 PM |
Three sources, three different answers. And a Google reviewer wrote, unprompted, in May 2026: "Had an emergency on a weekend. He answered his phone at night on weekend."
Andy is running a 24-hour emergency plumbing business whose own website tells every visitor he is closed nights and weekends. A customer with a burst pipe at 9 PM on a Saturday finds the Google profile — open — clicks through to the website, reads "Monday – Friday 10 AM – 8 PM", and calls somebody else. This is the highest-value single fix in this document, and it costs an afternoon.
The name is fragmented four ways
| Source | Name used |
|---|---|
| Google Business Profile | Family First Plumbing |
| Website title tag | Family 1st Plumbing |
| Website footer / og:site_name | Family 1st Service Plumbing |
| CSLB licence & BBB | FAMILY 1ST SERVICE PLUMBING |
Google's own Places text search returns no result for "Family 1st Service Plumbing" in Santa Rosa under any name or phone variant we tested, including a 40 km location-biased search — while a control query returns eight other local plumbers normally. The profile is only reachable by its exact Google-side name or its place ID. Google is not confident these are the same business.
Two links pointing the wrong way
- The site's "Yelp" icon does not link to Yelp — it points at a Google search URL. The 5.0/27 Yelp profile is never linked from the website.
- The site's "Website" icon links to HomeAdvisor — the dormant profile whose newest review is from June 2020. The only directory the website links to is its weakest, deadest asset.
[ Not verified ] Google Business Profile post activity, Q&A, services and attributes population, and review-response rate all require owner access to audit. Needs access
Sixty-eight five-star reviews, and the website shows one
This is the strongest part of the business and the most under-used asset in it.
| Platform | Rating | Reviews | Status |
|---|---|---|---|
| Google Business Profile | 5.0 | 41 | Live — reviews Apr, May, May, Jul 2026 |
| Yelp | 5.0 | 27 | Claimed · 24 photos |
| BBB | A | Not displayed | Not accredited · file opened Jan 2024 |
| HomeAdvisor | 4.9 | 11 | Dormant — newest review Jun 2020 |
| Angi | 4.9 | 11 | Mirror of HomeAdvisor — one asset, not two |
[ Data verified ] Google Places API · Yelp · BBB · HomeAdvisor · Angi, all pulled August 21, 2026.
What customers actually say
From Yelp's own review highlights: "I spoke to Andy and he sent over his son Dustin…" appears in 17 separate reviews. "I have used Andrew a few times… he went out of his way to help" — in 6. "He came Sunday morning and replaced the hoses…" — in 3. The recurring themes are personal service, responsiveness, honest diagnosis, and weekend availability.
The website shows a single unattributed testimonial from "Lisa J.", repeated identically on all 21 pages. No star rating. No review count. No link to Google. No link to Yelp. No mention of Andy anywhere in the site's own copy.
Why this matters three times over. Reviews are a direct local-pack ranking input, the strongest conversion asset a service business owns, and one of the primary corroboration signals AI systems use to decide who to recommend. Family 1st has a best-in-market 5.0 rating, the lowest review volume in the market, and none of it displayed on the website or marked up for machines. That is three separate returns available from the same fix.
[ Not verified ] Individual Yelp review bodies are lazy-loaded and could not be retrieved, so the most recent Yelp review date is unconfirmed and we cannot certify that no critical review exists — only that none surfaced in Yelp's highlights. Google review-response rate requires owner access. Needs access
Water is coming into the house. How fast can they call?
On a phone, they cannot.
- There is not a single
tel:link on any of the 21 pages. Confirmed still zero after opening the mobile menu. The number is never tappable — a panicking customer has to memorise it or copy it by hand. - The phone number does not appear anywhere on the mobile first screen. The header phone is wrapped in a
show-on-desktopclass and hidden below 1024 px. On a 390×844 iPhone viewport, the number first appears at y = 1025 px — a full screen below the fold. - The mobile fold contains a logo taking roughly the top third of the screen, "Plumbing done right.", "Our customers love our work.", and one small quote button. No phone. No 24/7. No licence. No reviews. No service area.
- On desktop the number is visible — 14 px, in a de-emphasised utility bar, still not clickable — sitting directly beside "Monday – Friday 10 AM – 8 PM".
[ Data verified ] Headless Chrome measurement at 390×844 and 1440×900 with screenshots captured, August 21, 2026.
Everything the website never says
Verified absent from all 21 pages by full-site search:
Missing trust
- No licence number — only "Fully Licensed, Bonded, Insured". The C-36 licence is clean, active and bonded, and it is invisible.
- No star rating or review count — 68 five-star reviews, one testimonial shown
- No owner name — the person 17 reviews are written about
- No guarantee, warranty, financing or service plan
- Footer still reads "Copyright 2020"
Missing urgency
- No "24/7", "24 hours", "after hours" or "weekend" anywhere on the site
- No response-time promise
- No online booking, live chat or text option
- No named service area beyond Santa Rosa
- Contact form: phone optional, email required — the inverse of what an emergency trade needs. No service type, no urgency flag, no ZIP.
Conversion Readiness Score: 22 / 100
| Factor | Weight | Score | Why |
|---|---|---|---|
| Click-to-call present and prominent | 20 | 0 | Zero tel: links site-wide |
| Phone visible above the fold (mobile) | 15 | 0 | First appears 181 px below the fold |
| Emergency / availability messaging | 12 | 0 | No 24/7 language; site advertises Mon–Fri 10–8 |
| Trust signals (licence, reviews, guarantee) | 15 | 3 | Unverifiable claim only |
| Social proof surfaced | 10 | 2 | One testimonial vs 68 real reviews |
| Form quality | 8 | 3 | Phone optional; no service or urgency fields |
| Booking / alternative contact paths | 8 | 1 | Form only |
| Mobile usability | 7 | 2 | Pinch-zoom disabled; six sub-44px tap targets |
| Page speed at point of need | 5 | 1 | 9.2s mobile LCP |
| Working CTAs | — | Penalty | Homepage "ABOUT US" button 404s; two nav links dead |
| Total | 100 | 22 |
There is no way to answer "where did that call come from?"
We checked all 21 pages for every common measurement tool. The result is the same on every page:
| Tool | Installed? | Tool | Installed? |
|---|---|---|---|
| Google Analytics 4 | No | Meta Pixel | No |
| Google Tag Manager | No | Call tracking | No |
| Google Ads conversion tag | No | Form conversion tracking | No |
| Click-to-call tracking | No | Booking / chat / remarketing | No |
The only third-party script on the entire website is Google reCAPTCHA. Nothing about this business's marketing is currently measurable — and it would remain unmeasurable even if a campaign launched tomorrow. Tracking is the cheapest item on the whole roadmap and the one that makes every other investment judgeable.
Local Services Ads are the structural fact of this market
Google Local Services Ads render above everything on both money queries — seven Google Guaranteed advertisers on "plumber santa rosa", eight on "emergency plumber santa rosa". Family 1st is in neither.
LSA suits this business unusually well. It is pay-per-lead, not pay-per-click — at a $78.64 CPC, that difference is enormous. Placement is driven by the Google Guaranteed badge, proximity, responsiveness and review rating, where Family 1st's 5.0 is best in market. John Owens holds the number-one slot on the emergency term with 373 reviews, not 2,172 — placement is not volume-gated. And Google Guaranteed requires verified licence and insurance: Family 1st qualifies today and is not enrolled.
Highest-value paid targets by verified CPC: backflow testing ($97.76) · plumber Petaluma ($97.91) · emergency plumber Santa Rosa ($97.25) · drain cleaning ($78.73) · plumber Santa Rosa ($78.64) · plumber Sebastopol ($76.44) · plumber Rohnert Park ($76.37).
Sequencing is not optional. No paid spend until conversion and call tracking are live, click-to-call works, the hours contradiction is resolved, and landing pages exist for the services being bid on. Paying $78 a click to send a homeowner to a nine-second-loading page with no tappable phone number is the most expensive mistake available in this market. Local Services Ads come first — pay-per-lead, and it rewards the asset Family 1st already has.
Thirty-one today. Seventy-four is buildable.
Every score below is tied to evidence in the sections above. The coral marker on each bar is the twelve-month target.
Overall Foundation Score today — a strong trade business on a digital foundation that is actively working against it. Trajectory: 31 today → roughly 74 within twelve months.
The twelve-month overall is set deliberately below the average of the component targets. Competitive position compounds slowest, and no honest forecast moves a business from last place in review volume to mid-pack inside a single year. Reputation at 62 is the outlier and the reason the rest moves quickly — the hard part, earning five-star work, is already done.
Stop the bleeding, then take ground
First 30 Days — Stop the bleeding
- Resolve the hours contradiction. Decide whether the business is 24/7 — the Google profile and the reviews say it is — and make the website, profile and Yelp agree. Highest-impact single fix in this document.
- Add
tel:click-to-call site-wide — sticky mobile call bar, header, every service page, every CTA. - Put the phone number in the mobile fold, with 24/7 messaging beside it.
- Fix the broken homepage "ABOUT US" button and the two dead navigation links.
- 301-redirect
/water-leak/to the leak detection page — recovers three live rankings. - Un-orphan the eight pages. Add a Sewer Services navigation group; link sewer repair, replacement and inspection properly.
- Publish the CSLB licence number (1050780) in the footer of every page.
- Unify the business name across the Google profile, website title, footer and citations.
- Install GA4, Tag Manager, call tracking and form conversion tracking.
- Write titles and meta descriptions for the six default pages —
/emergency-services/first. - Add an H1 to the homepage.
- Point the "Yelp" link at Yelp; replace the HomeAdvisor link. Update the 2020 copyright.
Days 31–60 — Build the foundation
- Deploy the full schema graph —
Plumber+LocalBusiness,areaServed,openingHoursSpecification,AggregateRating, aServicetype per page, andsameAslinks to the Google, Yelp and BBB profiles. - Rebuild the emergency plumbing page properly — 24/7, response time, what to do while waiting.
- Build the first four city pages — Rohnert Park, Petaluma, Sonoma, Sebastopol.
- Launch a review engine — every completed job, SMS and email ask, targeting +10–15 Google reviews per month.
- Complete the Google Business Profile — photos to 30+, services and attributes populated, weekly posts, Q&A seeded.
- Rebuild the contact form — phone required, service type, urgency, ZIP.
- Surface the proof on-site — star rating, review count, real reviews, Andy's story, licence, service area.
- Cut page weight — 132 KiB unused CSS and 411 KiB unused JavaScript; target mobile LCP under 2.5s.
- Apply for Google Local Services Ads / Google Guaranteed.
Days 61–90 — Take ground
- Remaining city pages — Windsor, Healdsburg, Cotati, plus a Sonoma County hub.
- Priority service × city pages, built only where demand is verified — not a doorway matrix.
- Launch the content engine against verified volume. Start with trenchless sewer repair cost (880/mo, difficulty 12) — where Family 1st already has the best content in the market, currently orphaned.
- FAQ hub with FAQ schema — only two competitors in this market have it.
- Citation and NAP cleanup across the major aggregators.
- Open the commercial lane — winery, restaurant, grease trap, backflow testing ($97.76 CPC). Mr. Rooter is the only operator there.
- Turn on measured paid search — only now that tracking, click-to-call and landing pages exist.
Quick wins — days, not months
- Click-to-call links
- Phone in the mobile fold
- The
/water-leak/301 - Licence number in the footer
- Fixing the broken About button
- Un-orphaning the sewer pages
- Fixing the Yelp link
- Installing GA4
Structural — real rebuild work
- Zero city-page architecture
- 21 pages against a 148–493 competitor range
- No content engine at all
- No schema layer
- No measurement infrastructure
- A theme that hides the phone number on mobile
Competitive opportunities
- The unclaimed AI-answer layer — one competitor with
Plumberschema, two with FAQ - Ongaro's single city page against 1,226 reviews
- Rooter Man's uncrawlable site against 628 reviews
- Moore's missing
AggregateRatingagainst 2,172 - The soft organic lane below the pack
- The uncontested commercial and winery segment
- The licence-number trust gap — most competitors bury theirs
AI opportunities
- Complete entity resolution — one name,
sameAs, full NAP AggregateRatingon 68 five-star reviews- FAQ content written as direct answers to real questions
- An Andy-centred experience and authority layer — the reviews already establish him as the entity customers name, and the website has never mentioned him
- Service and area markup so "who fixes sewers in Rohnert Park?" has a machine-readable answer
What we would do first, and why
| # | Action | Effort | Impact | Why |
|---|---|---|---|---|
| 1 | Resolve hours: site ↔ Google ↔ Yelp | Low | Critical | Site tells 24/7 customers you're closed |
| 2 | Click-to-call everywhere | Low | Critical | Zero tappable phone links today |
| 3 | Phone + 24/7 into the mobile fold | Low | Critical | Currently 181 px below the fold |
| 4 | GA4 + Tag Manager + call tracking | Low | Critical | Nothing is measurable today |
| 5 | Plumber / LocalBusiness schema graph | Med | Critical | Machines can't identify the business |
| 6 | Review engine → +10–15/month | Med | High | 41 vs 373 median; pack entry ≈143 |
| 7 | Unify the business name | Low | High | Four variants across four sources |
| 8 | Publish licence 1050780 | Low | High | Clean active licence, completely invisible |
| 9 | Un-orphan 8 pages incl. all 3 sewer pages | Low | High | Highest-ticket services unreachable |
| 10 | 301 /water-leak/ | Low | Med | Recovers 3 live rankings |
| 11 | Fix broken About CTA + dead nav links | Low | Med | Broken button on the homepage |
| 12 | Six missing titles/metas + homepage H1 | Low | High | /emergency-services/ at $97.25 CPC |
| 13 | Emergency page rebuild | Med | High | Highest-intent query in the trade |
| 14 | First four city pages | Med | High | Zero city pages vs 110 / 73 / 63 |
| 15 | Apply for LSA / Google Guaranteed | Med | High | Pay-per-lead; already qualifies |
| 16 | Surface reviews + Andy's story on-site | Med | High | 68 reviews, one testimonial shown |
| 17 | Cut 543 KiB unused CSS/JS | Med | Med | 9.2s mobile LCP |
| 18 | FAQ hub + FAQ schema | Med | High | Only two competitors have it |
| 19 | Content engine on verified terms | High | High | 0 posts vs 58–332 |
| 20 | Commercial / winery lane | Med | Med | Only Mr. Rooter is there |
The first five moves
- Make the website agree with the Google profile about when Family 1st is open.
- Make the phone number tappable — and put it where a panicking homeowner sees it first.
- Install measurement, so the next dollar spent can actually be judged.
- Give Google and the AI engines a machine-readable identity: one name, one schema graph, one NAP.
- Turn 68 five-star reviews from a private asset into a public one — and start growing the count.
Bottom line for Andy. You do not have a quality problem. A 5.0 rating across 68 reviews, a clean active C-36 licence, an A from the BBB, and customers who write your name into 17 separate reviews — that is a business other companies spend years trying to build, and it is the hard part.
The problem is that almost none of it is reachable at the moment a stranger needs a plumber. Google tells people you are open 24 hours; your website tells that same person you closed at eight and don't work weekends. Your phone number can't be tapped on a phone. Your best page — the trenchless sewer one — can't be reached by clicking. And nothing on any of your 21 pages tells a machine that this is a plumbing company in Santa Rosa, which is why three separate searches for a Santa Rosa plumber named seventeen other plumbing companies between them and never named you once.
The market is worth roughly $255,000 a month in advertiser-paid demand in your own service area, on head terms rated easy to rank for. The local pack is held by companies with 143 to 993 reviews — not five thousand. And the AI-answer layer that will decide the next few years of local search is claimed by exactly one competitor.
Family 1st Service Plumbing does not need "more SEO." It needs the website, the Google profile, the reviews, the content, the tracking and the paid layer to stop contradicting each other and start reinforcing each other. That is a foundation — and it is buildable in 90 days.
Let's walk through it together.
Thirty minutes, no pitch deck. We'll go through what we found, what we'd fix first, and what it would take — and you'll leave with the priority list whether or not you work with us.
Book a Call with Bonsai MarketingOr reach us directly — fikeshway@bonsaimarketingcompany.com · (707) 593-7539