Quick answer

A seven-step method to map which local businesses compete for one detailing job in one catchment, using dated public evidence, then turn one evidence gap into a bounded positioning test.

If you run a mobile rig, a fixed shop, or a coating and PPF studio, your competitor list is probably wrong. The usual reason: it mixes businesses that fight for different jobs. A tunnel wash does not take your paint correction work. A ceramic studio three towns over does not take your Tuesday maintenance washes.

That mix-up gets expensive. Operators discount against businesses they do not compete with and overlook the dealership reconditioning vendor holding the fleet work. The map shows density; density says nothing about overlap.

This guide replaces the pin count with a seven-step method: define one detailing job and its catchment, build the rival universe by substitution, freeze a dated public-evidence protocol, map fit and the customer decision path, run one bounded positioning test, and refresh on triggers. Nothing here guesses a rival's revenue, bookings, or skill, and nothing promises market share, leads, or revenue.

We build content and local-search systems for local service businesses at theStacc, so we sit on the operator side of this work. Here is what you will learn:

  • How to classify direct, substitute, adjacent, DIY, and non-rival businesses with evidence.
  • How to record public observations lawfully and label absence honestly.
  • How to convert one evidence gap into a bounded test with its own funnel stages and stop rule.

The method in one line: define one detailing job and catchment, build the rival universe by substitution, freeze a dated public-evidence protocol, map fit and decision path, run one bounded positioning test, then refresh the map on triggers.

This page is not a general framework; for that, see the competitor analysis guide or the SEO competitor analysis. Search execution lives in the auto detailing SEO guide, and stage definitions live in auto detailing marketing KPIs. This page owns one question: which local businesses actually compete for the detailing jobs you can service, and what do you do with that answer.

What You Need Before Starting

Set aside one working session with the owner and whoever handles intake. Bring a blank ledger, your own enquiry and job records for a declared recent window, and a list of public surfaces you can lawfully read. Assign one person to evidence quality and one to operations decisions.

  • Scope: one location or one clearly drawn operating area, not the whole metro.
  • Internal evidence: enquiry, qualification, booking, and completed-job records kept as separate stages.
  • Public evidence: ordinary public websites, public Business Profiles, public reviews, and current official records.
  • Decision owners: one person each for evidence quality, capacity, and compliance checks.

The U.S. Small Business Administration frames market research as examining demand, location, market saturation, and alternatives, with direct research answering business-specific questions. Those dimensions turn useful only when tied to a job intake can recognize. Where people go wrong is counting twenty map pins and calling that the market.

Step 1: Define One Detailing Job and Serviceable Catchment

Write one job-and-catchment card before naming any rival. Fix the operating model, service, vehicle and condition limits, urgency, radius, travel or bay and cure dependency, staffed hours, season, your own ticket band, and the compliance gate. Every observation later attaches to this card.

Card fieldWhat you recordIllustrative detailing entry (replace with your own)
Operating modelMobile, fixed shop, or studioTwo-van mobile rig; shop by appointment for coating
ServiceOne named job with boundariesTwo-step correction with ceramic coating, not washing
Vehicle and conditionWhat you accept or declineDaily-driven sedans and SUVs; no biohazard or heavy pet hair
UrgencyHow the deadline behavesNo emergency demand; deadlines are pre-sale, pre-trip, delivery, or event dates
RadiusMobile drive time or shop drawMobile within 25 minutes of base; shop draws from roughly 45
Travel, bay, and cureWhat the job consumesCoating holds a bay about two days plus cure; a mobile stop typically burns 30 to 45 minutes on travel and setup
Staffed hoursWhen intake and work happenIntake weekdays 8 to 6; bay work Tuesday to Saturday
Season and weatherDemand and constraint by seasonSnow-belt winter shifts work to interiors and salt removal; mobile exteriors pause in freezes and heavy rain
Your ticket bandYour own numbers onlyIllustrative US bands: wash 40 to 80 dollars, full detail 150 to 300, correction and coating 600 to 1,500
Capacity ceilingSafe jobs per weekTwo coating jobs per bay; two to three full details per van per day
Compliance gateVerify before advertisingRunoff rules, mobile vendor permits, and licensing checked with the city and county

Two cards at the same address produce different rival sets. A mobile wash card competes with other mobile rigs and wash clubs inside a tight drive-time ring; a coating card competes with fixed studios across a wider draw, because customers will drive for a two-day job booked weeks out. The compliance gate is not decorative: the SBA's licensing guidance states that requirements vary by activity and location and that the relevant agencies determine them. Mobile washing adds runoff and water-reclaim rules in many municipalities; verify with the jurisdiction, not a forum comment.

What actually happens: the card gets written as “detailing within 20 miles,” and the team argues about whether a car wash belongs. If the job, vehicle, urgency, or radius differs, that is a different card and a different rival set.

Step 2: Build the Rival Universe by Substitution

List every way a vehicle owner can get the defined job done inside your catchment: another detailer, a mobile or shop alternative, a car wash, dealership reconditioning, DIY products, or an adjacent provider. Same town or same category is not enough; overlap on the defined job decides membership.

Substitution is the part generic frameworks skip. An owner can book your maintenance plan, run a wash-club membership, hand the car to the dealer's recon vendor at trade-in, buy a consumer coating spray, or do nothing. Each is a different relationship and needs different evidence before it earns a ledger row.

Rival classWhy it can take the defined jobEvidence needed before it counts
Direct detailing rivalSells the same job to the same owner in your catchmentStated service, area, hours, and intake path
Mobile or shop alternativeDifferent model, same outcomeStated model, service list, and radius or address
Car wash substituteTakes the maintenance-clean job on speed and priceStated packages, membership language, and hours
Dealership and reconditioning vendorHolds fleet, trade-in, and pre-sale recon through dealer relationshipsPublic recon statements; volume never inferred
DIY and product substitutionOwner buys consumer sprays or kits, or skips the jobPublic product listings and self-service discussion
Adjacent provider (body, tint, wrap, mechanical)Bundles light detailing with other workStated bundled services on a public surface
Non-rivalNo overlap on job, vehicle, area, or hoursRecorded evidence of non-overlap

Density is real to the operators inside it. In one r/AutoDetailing thread, an operator described counting about twenty mobile detailing businesses in the Washington DC area before starting. Treat that as a voice-of-market prompt, one dated account, never representative proof about your town. The taxonomy tells you how many of those twenty actually touch your defined job.

A detailing industry blog frames competition as a reason to examine your own business for weaknesses and strengths. Use that as an attitude, and verify any specific claim directly before acting on it.

Where people go wrong: they label the nearest ten map results direct competitors, then discount in panic. Classify first, delete rows without substantiated overlap, and the list usually shrinks fast.

Turn the rival set into pages and profile updates you can defend. theStacc researches, drafts, scores, and publishes SEO content, and keeps your Google Business Profile active with posts, review replies, citations, and map-rank tracking.

Book a free strategy call →

Step 3: Freeze a Dated Public-Evidence Protocol

Decide which public surfaces you will read, on what date, from what location and device, and which exact fields you will record. Name an owner, a screenshot and note policy, and a privacy and terms gate. Write absence as not observed on the checked surface and date, never as does not exist.

Run this protocol as a working checklist before each capture session:

  • Surfaces: rival websites, public Business Profiles, public reviews, public social pages, and official registries you may read.
  • Date and context: when you looked, from what location, on what device; results shift with all three.
  • Exact fields: the Step 4 matrix fields, captured as short quotes with a screenshot or saved copy.
  • Owner and recheck date: who captured it and when the row expires.
  • Privacy and terms gate: public pages only, read within each site's terms.

The prohibited list is short and absolute: never call posing as a customer, never book fake appointments or submit fake quote requests, never scrape against a site's terms, and never take material from private groups or anything behind a login. One deceptive observation poisons the whole ledger.

RivalURL or surfaceObserved statementCapture dateLocation and device contextFact, interpretation, or unknownAnalystRecheck date
Rival A (label only)Services page URLStates ceramic coating and mobile service within 15 miles2026-07-13Your office, desktop browserFact (stated)Your initials2026-08-13

The row above is a format example with placeholder labels, not an observation of a real business; every real row is one observation from one surface on one date.

Two policy boundaries matter. Google's profile guidelines say a Business Profile must accurately represent the real-world business, including location or service area, hours, and categories, so record the primary category (for most detailers, “Car detailing service”), stated hours, and service area exactly as shown; a profile is still the business's own dated representation. Google's review guidance allows requesting genuine reviews, prohibits incentives, and says replies should protect privacy; hold your own profile to the same rules while reading rival review themes as public text.

Absence language keeps the ledger honest. If a rival's site shows no prices, the row reads “pricing not observed on website, 2026-07-13,” never “hides prices” or “charges more.”

Step 4: Map Service, Radius, and Operating-Model Fit

Compare each verified rival against the card on stated job types, service area, hours, intake and inspection dependency, mobile travel, bay and cure needs, and visible exclusions. Record only what is stated, and mark everything else unknown; a stated radius or service list proves neither availability nor skill.

FieldWhat you record per rivalReading rule
Stated servicesJob types claimed publiclyA listed service proves the claim, not quality
ModelMobile, shop, or bothThe model decides what is physically contestable
Radius or addressStated area or locationMarketing language until intake confirms it
Staffed hoursPublished hoursA dated statement, rechecked on schedule
Inspection or quote pathBooking, form, photos, or inspection-firstCorrection and coating often need inspection; a wash does not
Booking pathCall click, form, or scheduler as separate pathsRecord what exists; never test with a fake enquiry
Public proofPhotos, policies, claimed certificationsSelf-published; note what is shown, not implied
Review themesRecurring themes with a declared sample windowA sample with bias, never a prevalence claim
Visible exclusionsStated vehicle, condition, or job limitsOften the clearest fit signal published
Not-observed fieldsAnything absent on checked surfacesNot observed with surface and date, never does not exist

The operating model changes what a rival can contest. A mobile rig trades working slots to travel and setup, typically 30 to 45 minutes per stop as a planning range, loses exterior work to weather, and answers to runoff rules that vary by municipality. A fixed shop sells controlled light, bay time, and cure windows; one coating job can hold a bay about two days. A mobile-only rival and a studio claiming the same job are claiming different versions of it.

Seasons move the map. Snow-belt winters push interiors and salt removal, spring lifts full-detail demand, rain climates idle mobile exterior work for weeks, and dealership recon runs on dealer cycles rather than consumer seasons. Seasonal mobile rigs that appear in spring and vanish by fall belong in the ledger with that note attached.

What actually happens: someone reads “30-mile radius” and assumes coverage, or reads “ceramic coating” and assumes skill. Stated is not delivered; capacity and quality stay marked unknown until your own intake says otherwise.

Step 5: Compare the Customer Decision Path

Walk the path a real customer takes for the defined job: query, profile, website, service explanation, proof and policy signals, then call click or form as separate response paths, quote or inspection, and booking. Keep observed facts, your interpretation, and unknowns in separate columns so friction is described, not imagined.

  1. Query and surface: the phrase and where the result appeared: Map Pack, organic, or a paid unit such as Local Services Ads where the category is eligible. A paid placement is purchased presence, not earned proof.
  2. Profile: category, hours, photos, review themes, and Q&A on the public profile.
  3. Website and service explanation: whether the defined job is explained with scope and vehicle limits, or just named in a list.
  4. Proof and policy signals: portfolio, warranty and cancellation language, insurance statements, and care instructions.
  5. Response path: call click or form, recorded as separate paths; they are alternatives, not sequential steps.
  6. Quote or inspection and booking: whether the job needs a paint inspection or photos first, and how scheduling is offered.

Stage separation keeps this honest. Impression, click, profile view, call click, form submission, qualified enquiry, booked job, and completed job are separate events, each with its own source system: search and profile insights for impressions and clicks, the call log for call clicks, the form tool for submissions, your written intake rule for qualified, the scheduler for booked, and job records for completed. A connected call, a quote or inspection, a cancellation, a rework or refund, and a repeat job are each their own event too; none stands in for another.

Friction is where comparison pays. A photo-required quote form filters out casual shoppers and loses hurried ones; phone-only intake loses evening researchers; instant booking matters only for jobs that skip inspection. Record each observation as fact, your reading as interpretation, and everything else as unknown. For the conversion side of your own path, see auto detailing website conversion.

Step 6: Find Evidence Gaps and Choose a Bounded Positioning Test

Pick one job and catchment where the ledger shows a genuine evidence gap, then design one bounded test: hypothesis, capability proof you own, surface, dates, capacity ceiling, funnel stages, owner, and stop rule. Never build a test on an unobserved competitor weakness.

An evidence gap is something no verified rival shows publicly and that you can prove you deliver. Detailing examples: no verified rival states weekend drop-off for coating customers; nobody publishes a maintenance-plan scope with vehicle limits; the fleet recon intake path is unclear on every checked surface. A gap becomes a test only when the capability proof is yours: bays, trained staff, published policies, and hours you actually staff.

Test fieldWhat you writeIllustrative entry (replace with your own)
Job and catchmentOne Step 1 cardWeekend drop-off coating for daily drivers within a 45-minute draw
HypothesisFalsifiable, about your offerStating weekend drop-off will produce qualified enquiries we can serve inside capacity
Capability proofEvidence you controlTwo bays, trained staff, published policies, staffed weekend hours
SurfaceWhere positioning runsService page plus Google Business Profile posts
Start and end datesA declared window2026-08-01 to 2026-08-28, judged after booking lag
Capacity ceilingThe hard delivery limitFour weekend slots per month
Stage eventsRecorded separatelyImpression, click, call click, form, qualified enquiry, booked job, completed job
OwnerOne accountable personNamed owner plus intake owner for qualification
ExclusionsWhat the test will not doNo discounting, no jobs off-card, no claims about rivals
Stop conditionWritten before launchStop on capacity breach, failed compliance review, or end date

Three formulas carry the test. Keep every field visible, and if the rival set, the attribution, or the completion data is unavailable, write the result as unavailable. A formula with a guessed denominator is worse than no formula.

FormulaNumeratorDenominatorEvidence windowSource systemOwnerExclusions
Public-service overlap rateObserved rivals explicitly stating the selected job and catchment fitAll manually verified direct and substitute rivals in the frozen setOne dated observation cycle, repeated on the declared refresh dateObservation ledger with URLs and capturesResearch ownerDuplicates, closed or unverifiable entities, adjacent providers not offering the selected job, unknowns
Qualified-enquiry rate for positioning testUnique test-attributable forms and connected calls qualified under the written service, radius, and capacity ruleAll unique attributable forms and connected calls in the test cohortDeclared test windowAnalytics, call, and intake logIntake ownerCall clicks, duplicates, spam, DIY, employment and vendor enquiries, unsupported work or radius
Completed-job rate for positioning testUnique qualified test enquiries resulting in a completed eligible jobAll unique qualified test enquiriesTest cohort plus declared booking and completion lagCRM, scheduler, and job recordOperations ownerCanceled, no-show, incomplete, and refunded; rework disclosed separately

When the test says publish, the modules execute your side of it: Content SEO researches, drafts, scores, and queues or publishes the articles and service pages; Local SEO covers GBP posts, review replies and Q&A, citations and NAP, and map-rank tracking; Social Media creates and schedules posts for Instagram, Facebook, LinkedIn, and X with your approval rules. None of them monitors competitors; they make your own positioning visible, which the auto detailing SEO guide covers end to end.

Run the test with a team that ships the content and the local presence. We will help turn the bounded card into pages, profile updates, and posts you can honestly stand behind.

Book a free strategy call →

Step 7: Review Completed-Job Evidence and Refresh the Map

Compare the test cohort across qualified, booked, and completed stages without merging them, note season and density changes, then keep, change, or stop. Any rival change or search-result change triggers a dated refresh of the affected rows, not a timeless new conclusion.

Judge the cohort in order: how many attributable forms and connected calls qualified, how many qualified enquiries became booked jobs in the scheduler, and how many booked jobs became completed jobs in the job record, with cancellations and rework recorded as their own events. Detailing books out days to weeks, especially coating, so judge a four-week test only after the declared booking and completion lag.

Density worksheet fieldWhat you record
Catchment definitionThe drive-time ring or draw area from the Step 1 card
Known providers by typeCounts per rival class from the taxonomy, each with its source
Count source and dateWhere each count came from and when it was captured
UncertaintyWhat the count cannot see: unlisted rigs, closed listings, duplicates
Seasonal entrants and closuresMobile rigs and wash pop-ups that appear or disappear with the season
Verification ownerWho manually confirms the count and when

Never convert the density count into market share. Twelve verified providers touching your job card is context for a test, not a percentage of anything, because you have no lawful visibility into rival bookings.

Refresh on triggers rather than habit:

  • A rival opens, closes, or changes stated services, hours, or model.
  • Your search surfaces shift for the queries on the card.
  • The season turns, or seasonal entrants appear.
  • Your own capacity, hours, or operating model changes.

Each trigger refreshes the affected ledger rows with a new capture date and owner, and the decision is one of three words: keep, change, or stop. Keep auto detailing marketing KPIs open for the stage definitions behind this step.

Frequently Asked Questions

These answers settle the decisions that remain after the seven steps: whether a car wash counts, how many rivals belong in scope, what may be recorded, how mobile and shop models differ, and how a gap becomes a bounded test without inventing competitor data.

How do I identify competitors for an auto detailing business?

Start with one defined job and catchment, then list every way a vehicle owner could get that job done: direct detailers, mobile and shop alternatives, car washes, dealership reconditioning, DIY products, and adjacent providers. Keep a business only where public evidence shows overlap on service, vehicle fit, area, hours, and intake path.

Is a car wash a competitor to an auto detailer?

For some jobs, yes. A tunnel or hand car wash competes for the maintenance-clean job when speed and price decide. It is usually a substitute, not a direct rival, for full details, paint correction, coating, or PPF work. Classify it per job card, not with one permanent label.

How many local detailing competitors should I analyze?

There is no correct fixed number. Scope decides: one job and one catchment might produce three verified overlapping providers or fifteen, and both are workable. Keep every rival you can manually verify against the job card, and stop adding names when new entries no longer change the classification or the test decision.

What can I ethically record about a competitor?

Record ordinary public facts: stated services, service area or address, hours, booking or quote paths, visible availability language, review themes, published offers, and policy-compliant profile observations. Never pose as a customer, book fake appointments, scrape against terms, or mine private groups. Absence is written as not observed on the checked surface and date.

How do mobile and fixed-shop detailers compete differently?

They overlap on the customer, not the economics. A mobile detailer sells driveway convenience and trades working slots to travel time, weather, and water rules. A fixed shop sells controlled conditions for correction, coating, and cure time. Compare them per job: a wash card and a coating card produce different rival sets.

Should I compare competitor prices?

You may record a published price as a dated observation with its scope, vehicle limits, and expiry. It never proves the rival's realized ticket, value, quality, or profitability, and it must not drive coordinated pricing. Compare your own costs and delivery model, then clarify your scope, monitor, or leave that segment.

How often should I refresh the analysis?

Refresh on triggers, not one arbitrary schedule. Recheck hours and intake paths monthly, re-read review themes on a declared sample window, and re-verify the rival set when a provider opens, closes, or changes stated services, or when search surfaces shift. Each row carries its own recheck date and owner.

How do I turn a competitor gap into a test?

Convert the gap into a bounded card: one job and catchment, a hypothesis, capability proof you control, a surface, start and end dates, a capacity ceiling, stage definitions from impression to completed job, an owner, exclusions, and a stop rule. If capability proof or capacity is unavailable, the honest result is unavailable and the test does not run.

Keep the Map Small, Dated, and Honest

A useful auto detailing competitor analysis ends with one defined job, a classified rival set, dated public observations, clean funnel stages, one bounded test, and a refresh trigger. That package gives you something safe to approve, reject, or recheck without promising market share, leads, or revenue.

  1. Define one detailing job and its serviceable catchment on a card.
  2. Build the rival universe by substitution, not by distance.
  3. Freeze a dated public-evidence protocol with lawful surfaces only.
  4. Map service, radius, and operating-model fit, marking unknowns.
  5. Compare the customer decision path with every funnel stage separate.
  6. Turn one evidence gap into one bounded positioning test.
  7. Review completed-job evidence and refresh the map on triggers.

The discipline matters most when the honest entry is “not observed” or “unavailable.” An unknown is a reason to improve the next evidence window, never a blank to fill with an assumption about a competing detailer.

Build your marketing around jobs you can substantiate and deliver. We will help turn the chosen test into accurate content and local-search execution, without inventing competitor intelligence.

Book a free strategy call →

Sources & references

Akshay VR

Akshay VR

Marketing Head

Marketing Head at theStacc. Previously Senior Marketing Specialist at ARKA 360. Runs content strategy and SEO for B2B SaaS.

From the theStacc product Explore the Local SEO module

Rank in the Map Pack, collect reviews, and keep every location active — on autopilot.

Weekly local SEO teardowns

One practical email a week. Map Pack, GBP, AI Overviews — no fluff. Unsubscribe anytime.