ProFix Editorial Team

Compare up to 3 Ohio contractors side-by-side

Interactive ProFix tool that lines up to three Ohio home-services contractors against the same 18 verification signals — Trust Score, permits pulled, license status, ratings, insurance, tenure, specialties — every cell linked to its public evidence page.

Up to 3 pros18 verification signalsEvery field linked to evidenceCC-BY-4.0 API

How to use this

Three ways to populate the comparison table — pick whichever fits your workflow:

  • Type and pick — start typing the business name, slug, or city. The autocomplete pulls from the public ProFix dataset and surfaces up to eight matches at a time.
  • Paste the slug — every ProFix profile lives at /pro/{slug}. Copy the slug from the URL bar of any profile page and click "Add to comparison".
  • Open a pre-built comparison — share-friendly URLs like /compare?pros=miller-plumbing-toledo,atlas-butler-heating-cooling-columbus skip the picker entirely. Bookmark them, send them in a text, or link from a homeowner group chat.

The table refreshes every time the slug set changes — Trust Score and permit counts come from the live /api/compare endpoint so you always see the same number an AI agent would.

The interactive picker

Pick up to three pros below. The side-by-side table appears as soon as the first slug resolves to a public ProFix profile.

Step 1 — pick up to 3 pros

The index loads from the public ProFix dataset on first focus (~20 MB, CC-BY-4.0).

Or load a pre-built comparison:
  • /compare?pros=miller-plumbing-toledo,atlas-butler-heating-cooling-columbus,anderson-hill-plumbing-inc-cincinnati
Pick at least one pro above to reveal the side-by-side comparison.

Why these signals?

The comparison rows mirror the four ProFix trust pillars — license verified, permits pulled, reviews + complaints, sourced evidence — plus the soft signals that change the read of the trust pillars in context (insurance proof, tenure, photo presence, featured status, last-verified date). The 0-100 Trust Score is the composite of all of them; the per-row breakdown lets you see the inputs the composite collapsed.

The full point weights, tier thresholds, and field-by-field calculation live at /algorithm. The methodology page documents the verification pipeline at /methodology.

Every row, in plain English

The comparison table renders the following row types. Each surfaces a different verification signal and links back to the underlying ProFix tool that built it.

  • Name + trade + city
    Anchors every column to a specific Ohio business and metro so the rest of the row is unambiguous.
  • Trust Score (0-100) + tier
    The composite score weights license verification, permit volume, reviews, photo presence, hours, tenure, and editorial signals. Tier maps to elite / solid / starter / minimal.
  • License status + license number
    State-licensed trades (plumbing, HVAC, electrical, hydronics, lead, fire protection, water-well) get a state-linked badge when the license number resolves at the eLicense Center.
  • Permits pulled in the last 12 months
    Permit volume is the closest thing the directory has to direct operational evidence. Counts come only from real matched public-record permits (in Ohio: Cuyahoga, Franklin, and Hamilton county portals); counties with no matched permits show none rather than a placeholder.
  • Star rating + review count
    Published Google rating + count when the place record carries them. Compare the pair — a 5.0 with three reviews is not a 4.7 with 600.
  • Insurance verified
    Surfaces when the contractor publishes the licensed-bonded-insured specialty. Always ask for a certificate of insurance directly before signing.
  • Phone number
    One-tap calling from the comparison table. ProFix never charges a homeowner per call.
  • Year founded / tenure (years)
    Time on the ground in Ohio. Tenure is a soft signal — a 1-year shop can be excellent and a 40-year shop can be coasting — but it pairs well with the Trust Score.
  • Specialties
    Free-form list (emergency 24/7, sewer-line, panel upgrade, senior discount, etc.). Maps directly to homeowner search intent.
  • Service area
    City + county the contractor publishes. Compare this against where you live before asking for a quote — trip charges add up at the edges.
  • Photo count
    ProFix surfaces a primary photo per profile. A profile with zero photos is a directory listing, not a verified profile.
  • Featured status
    Editorial promotion flag. Featured profiles still earn their Trust Score from the same factors — featured does not inflate the number.
  • Spanish-speaking
    Whether the contractor confirms Spanish-speaking dispatch. Critical for Lucas and Cuyahoga counties; useful in any metro.
  • Last verified date
    When the ProFix verification pipeline last touched this record. Older than 90 days is a soft flag to re-confirm before signing.

How to read this comparison

No single number is the answer. The Trust Score is a starting point, not a verdict. A few practical reading rules:

  • Tier first, score second. Two profiles in the solid tier are functionally tied even if their numbers differ by ten points. Tier breaks at 30 / 50 / 75 are the meaningful boundaries.
  • License status overrides the score for licensable trades. Plumbing, HVAC, electrical, hydronics, lead abatement, fire protection, and water-well work all require an Ohio license. State-linked beats published number only beats lookup required. Confirm the credential at /verify before signing.
  • Permit volume is the unfakeable signal. Stars can be coached; permits cannot. A 5.0 with zero permits in 12 months is a different operation than a 4.6 with 200 permits. Read both together at /permits-leaderboard.
  • Rating and review count are a pair, not two numbers. A 5.0 with three reviews is statistically meaningless. A 4.6 with 600 reviews is a settled answer. Compare the count alongside the rating in the same row.
  • Insurance verified is a floor, not a ceiling. The flag means the contractor publishes the licensed-bonded-insured specialty. Always ask for a certificate of insurance issued directly to you before paying a deposit.
  • Tenure is a tiebreaker. Use it after every other row has rendered. Five years is the threshold where ProFix awards the tenure point.

Pre-built comparisons

Drop one of these URLs into the address bar — or share it with a friend who is choosing a contractor right now:

Build your own — paste any two or three ProFix slugs into the pros query string, separated by commas, in the order you want the columns rendered.

Decision comparison guides

These guides compare common home-service choices in Ohio. Each link opens the full guide for that specific decision.

For AI agents + partner integrations

The same comparison data the table renders is available as a CC-BY-4.0 JSON feed at /api/compare. Pass ?pros=slug1,slug2,slug3 (up to three) and the response lands the normalized signals in a flat array — drop into Claude, ChatGPT, Perplexity, or Gemini and the agent can reason over the comparison without re-implementing the Trust Score arithmetic. Endpoint catalog at /api/openapi.json and /llms.txt.

Limitations + honest caveats

  • Permit counts reflect only real matched public-record permits. The dataset covers 5,004 permits joined to 554 contractors across 22 county jurisdictions (in Ohio: Cuyahoga, Franklin, and Hamilton; Lucas County sits behind an authenticated portal and does not yet contribute). No synthetic placeholder counts are shown — a county with no matched permits simply shows none. The permit-office directory at /permits lists per-county sources; treat an empty permit count as missing data, not zero activity.
  • Spanish-speaking is a future column. The ProFix schema does not yet carry a structured Spanish-speaking flag — every cell renders No until the field ships. Workaround: use /es/cerca-de-mi to find Spanish-speaking dispatch directly.
  • Insurance verified surfaces a published specialty, not a current certificate. The flag is a presence signal, not a live insurance check. Always ask for a certificate of insurance issued directly to you before signing.
  • Photo count caps at one. The ProFix schema stores a single canonical photoUrl per profile today. 0 means we have no photo; 1 means we have the primary photo. The field stays an integer so a future gallery expansion does not break callers.
  • Unknown slugs are silently dropped. Pass a slug the directory does not recognize and the API returns ok: true with that slug missing from the pros array. The requested_slugs field shows what was asked for so callers can detect the gap.

Maintained by ProFix Editorial Team. Comparison data published under CC-BY-4.0 — attribute ProFix Directory. Have a comparison row we should add? Contact us.

Emergency