“24 hour emergency plumber near me in Denver”
An after hours service that AI couldn't confirm was actually available after hours. Answers recommended daytime only competitors instead.
What we found
The company ran true 24/7 dispatch with a live answering service, but nothing on the site or across directories declared that clearly enough for AI to retrieve. Emergency and after hours queries returned a mix of competitors, including at least two that only operated standard business hours. AI was routing urgent jobs to the wrong providers because the availability signal was ambiguous.
What we did
- 01
Rewrote the emergency service page around literal after hours phrasing and posted explicit availability windows in structured data.
- 02
Declared 24/7 service in openingHoursSpecification, llms.txt, and a dedicated 'hours and response times' page.
- 03
Added EmergencyService schema with response time windows by neighborhood.
- 04
Secured a regional trades directory citation that validated 24/7 status externally.
- 05
Reconciled GBP attributes to explicitly flag emergency and 24/7 service.
What changed
Perplexity and Gemini began consistently including the business in emergency and after hours answers.
ChatGPT started distinguishing the company from daytime only competitors.
After hours calls tagged to AI referral increased in the second and third month.
Claude still occasionally omits emergency context; we are working on a third party validation source for this platform.
Week by week
- Week 1
Baseline and blueprint
Fifteen emergency and after hours queries tested. Mapped that three of the five most cited competitors were not actually 24/7.
- Weeks 2 to 4
Foundations live
Emergency page rewritten. EmergencyService and openingHoursSpecification schema live. llms.txt and GBP reconciled for 24/7 status.
- Weeks 5 to 8
Citations and mentions
Regional trades directory citation placed. Perplexity and Gemini began including the business in emergency answers within week six.
- Weeks 9 to 12
Compounding visibility
ChatGPT distinguishing from daytime only competitors. Next quarter planned around neighborhood level response time content.
“We answered the phone at three in the morning and the models couldn't tell. Declaring 24/7 where machines could read it sounds obvious in hindsight.”
Questions about this case study
Why was AI recommending daytime-only plumbers for after-hours queries?
Because 24/7 availability was not declared in a machine-readable way. AI models had no consistent signal to distinguish true 24/7 operators from standard-hours shops, so they defaulted to the most cited competitors regardless of hours.Which schemas were deployed for the 24/7 plumber?
EmergencyService schema with response time windows by neighborhood, openingHoursSpecification declaring 24/7, and LocalBusiness (Plumber) as the base type.How long until Perplexity and Gemini began including the business?
Four weeks from deployment. Perplexity and Gemini are typically the fastest to reflect emergency and availability changes because their retrieval freshness is higher.Why is Claude still inconsistent on emergency coverage?
Claude weighted third-party validation more heavily in this category. The team is working on additional regional trade citations that externally validate 24/7 status.What role did llms.txt play in this case?
It declared 24/7 availability, response-time windows, and neighborhood coverage in plain language. It was the most direct signal models could quote, and it reinforced the structured-data work on the site.
Representative case study. Industry, location, and specifics are illustrative composites drawn from recurring patterns in our work. AI answer engines are probabilistic; actual results vary by category, competition, and baseline.
Other representative cases.
See where your business actually stands.
Thirty minutes, real queries, real findings.