HomeGuidesArizonaHow to Verify an Arizona Contractor's License (and Why the ROC's Recovery Fund Makes the License Check Pay for Itself)

Arizona guide

How to Verify an Arizona Contractor's License (and Why the ROC's Recovery Fund Makes the License Check Pay for Itself)

The 3-step ROC check, the Residential vs. Commercial license-class trap, and the $1,000 handyman exemption that catches more homeowners than any other Arizona rule.

ContractorRoster EditorialPublished 7 min read

Arizona is one of the few states where verifying a contractor's license is not just a fraud check — it's the gate to a real, administratively-claimable insurance pool. The Arizona Registrar of Contractors runs a Residential Contractors' Recovery Fund under ARS §32-1131 et seq. that pays homeowners up to a per-licensee cap (currently around $30,000 — confirm the live figure on the ROC site) when a licensed residential contractor causes actual damages and can't pay restitution.

Unlike most state recovery funds, the AZ ROC handles claims administratively. You don't need to win a civil judgment first.

The catch is the part most homeowners miss: the fund only pays out for work performed by a licensed Residential Contractor. Hire unlicensed — or hire a Commercial-only license-holder for residential work — and the fund pays nothing. The license check is the trigger. This guide walks the 3-step ROC verification process, decodes the Residential / Commercial / Dual class split, and lists the red flags that catch most homeowners and out-of-state buyers who think "I checked the license" is the whole job.

Why verification matters more in Arizona than most states

Hiring an unlicensed contractor in Arizona — or hiring a licensed one for work outside their license class — has three concrete consequences.

You lose access to the Residential Contractors' Recovery Fund. ARS §32-1131 through §32-1140 establishes the fund and its claim process. Per-licensee recovery caps are statutory — the figure most commonly published is around $30,000, but pull the current number off the ROC's Recovery Fund page before relying on it. The fund is built from per-license assessments paid by every active Residential and Dual contractor. Your verified, licensed contractor is, in effect, already paying into your insurance. Hire unlicensed and you've opted out of a pool the licensed shops are funding for you.

The handyman exemption is narrow and catches a lot of jobs. Under ARS §32-1121(A)(14), Arizona permits work without an ROC license when the total contract value, labor plus materials, is under $1,000, the work doesn't require a building permit, and the contractor doesn't advertise as licensed. A handyman quoting a $2,500 bathroom tile refresh is outside the exemption — and the homeowner is in the same unlicensed-contract position as someone who knowingly hired an unlicensed shop. Confirm any "handyman" job is genuinely under the $1,000 cap, all-in.

License-class mismatch voids the same protections as no license. A B-2 General Small Commercial license is not a license to build a custom residential home; an R-42 Residential Roofing license is not a license to re-roof a 200,000-square-foot warehouse. For Recovery Fund purposes, work outside the license class is treated the same as unlicensed work — no fund claim.

Those three together are why the ROC check is non-optional in Arizona, even on a referral from a neighbor.

The 3-step ROC verification process

Step 1 — Open the ROC Contractor Search. Go to roc.az.gov and click "Contractor Search," or jump directly to roc.az.gov/contractor-search. The portal lets you search by license number, business name, or qualifying-party name. Search by name first and confirm the license number matches what the contractor handed you — license numbers in Arizona stay with the business entity, not the individual, and a number printed on a stale business card may belong to a business that's since been dissolved.

Step 2 — Confirm the Residential vs. Commercial track matches the job. This is the AZ-specific step and the most-skipped one. The ROC issues classifications in three families:

  • R- prefix = Residential. Includes B (General Residential), B-4 (General Residential Engineering), and dozens of specialty residential codes (R-11 electrical, R-37 plumbing, R-39 HVAC, R-42 roofing, R-7 carpentry, R-9 concrete, and so on).
  • C- prefix = Commercial. Includes B-1 (General Commercial), B-2 (General Small Commercial), and the matching C-XX specialty codes (C-11 electrical, C-37 plumbing, C-39 HVAC, C-42 roofing, etc.).
  • CR- prefix = Dual. The licensee is qualified for both Residential and Commercial scope in that specialty (CR-11 electrical, CR-37 plumbing, CR-39 HVAC, CR-42 roofing).

A contractor with only a B-2 General Small Commercial classification cannot legally pull permits for a custom residential home. A contractor with only an R-42 Residential Roofing classification cannot legally take on a 200,000-square-foot commercial re-roof. The portal shows the classification plainly; the contract you're about to sign rarely flags the mismatch. Read both and compare.

Step 3 — Read the status code, then click through to Complaint Activity. The ROC publishes status, classification, qualifying party, bond, and complaint history all on the same record. The status codes you'll see are Active, Suspended, Revoked, Cancelled, Inactive, and Expired. Active is the only status that protects you under the Recovery Fund. Suspended in Arizona commonly means an unpaid Recovery Fund judgment, a lapsed workers' compensation policy, or unresolved disciplinary action — pull the complaint history tab and read what's actually there. The ROC is unusually transparent about disciplinary outcomes: complaints, citations, and suspensions surface inline on the public record, alongside the resolution. A clean Active license with two unresolved complaints from the last twelve months is a different risk profile than a clean Active license with zero.

Decoding AZ license classes (the part that catches most people)

Arizona's classification system is the deepest in the Southwest, and the one place where "licensed" really does mean a specific scope of work. The short decoder:

General classes. B-1 is General Commercial. B-2 is General Small Commercial. B is General Residential. B-4 is General Residential Engineering. KB-1 and KB-2 are dual residential/commercial general combos. B-3 (Remodeling and Repair) is a separate residential class often used by single-trade remodelers — narrower than a full B.

Specialty classes. Most specialty trades carry a C- (commercial), R- (residential), and CR- (dual) variant of the same code. Electrical is C-11 / R-11 / CR-11. Plumbing is C-37 / R-37 / CR-37, with an R-37R residential-only-no-solar variant. HVAC is C-39 / R-39 / CR-39, with an R-39R no-solar variant. Roofing is C-42 / R-42 / CR-42. Confirm the exact code list against the ROC's License Classifications page — the catalog changes.

The solar quirk. Arizona does not issue a standalone solar-contractor classification. Solar PV work is performed under a CR-11 / C-11 / R-11 Electrical license; solar water-heating bundles into R-37 / C-77 Plumbing Including Solar; solar HVAC into R-39 / C-74. A shop pitching a residential rooftop PV install must hold one of the Electrical classes — anything else is out of scope.

Bonds scale to class. ARS §32-1152 requires every ROC licensee to post a contractor's bond as a condition of licensure, scaled to license class and projected dollar volume. Residential bonds typically run in the low thousands to high single-digit thousands; commercial bonds run higher. Pull the live figure off the ROC's bond schedule for the class you're verifying, then confirm the bond on the contractor's record is current and matches.

Red flags most Arizona homeowners miss

A residential-only license quoting a commercial job (or vice versa). A B-2 General Small Commercial license-holder bidding on a $4 million tenant improvement may be qualified by scope and technically correct. A B-2 license-holder bidding on a custom residential home is not. The classification controls; the contractor's resume does not.

The license is active but the contracting entity on your contract is a different LLC. Arizona ROC licenses are tied to a specific business entity. A licensed individual operating under their personal name with a license number from a separate, dissolved LLC is operating with an effectively expired license for the entity you're contracting with. Confirm the entity on the ROC record matches the entity on the contract — exact legal name, not a dba.

A "handyman" bidding above the $1,000 ARS §32-1121 ceiling. The handyman exemption is real and it's narrow. Total job value, including labor and materials, must be under $1,000, the work must not require a permit, and the handyman cannot advertise as licensed. A $2,500 deck repair or a $1,400 tile job is outside the exemption. The person quoting it needs an ROC license. If they don't have one, you have no Recovery Fund claim if the job goes bad.

Active license, suspended bond. The ROC portal shows bond status alongside license status. A clean Active license with a lapsed or insufficient bond is a contractor you cannot legally hire — the bond is part of the license under ARS §32-1152, and the Recovery Fund coordinates with the bond on claims.

What the ROC portal doesn't tell you

Honest about the limits of the public record, even for one of the more transparent state boards in the country.

Live insurance status is not surfaced. The ROC collects proof of bond at licensing and renewal. General liability and workers' compensation are required by statute for most license classes, but the portal does not display live coverage status for either. Ask the contractor for a current Certificate of Insurance naming your property as the certificate holder, then call the insurer to confirm.

Mechanic's-lien history lives at the county recorder. A contractor with a clean ROC record can still have a pattern of recording mechanic's liens against past clients' properties — that history sits at the Maricopa, Pima, Pinal, Yavapai, or Coconino County Recorder, depending on where the work was done. The ROC portal will not surface it.

City and HOA overlays sit on top of state licensure. Phoenix, Tucson, Mesa, Scottsdale, and most other AZ municipalities require their own contractor registration or business license on top of the ROC license. Some HOAs require additional vetting for work in their community. The ROC check is the floor, not the ceiling.

Out-of-state contractors. The portal records the AZ-side registration but does not verify the underlying home-state license. Pull that one separately.

Sourcing licensed Arizona contractors at scale

ContractorRoster maintains a continuously-updated mirror of Arizona's ROC licensed-contractor data — 39,625 active records across the trades we cover — with phone, email, website, and Google ratings layered in. For one-off verification of a name you've already been handed, the free ROC Contractor Search above is the right tool — it's the source of truth, and the Recovery Fund and complaint history are surfaced there inline.

For sourcing multiple licensed contractors at scale — a property manager building a vendor roster across the Phoenix metro, a supplier launching into Tucson, a developer running an RFP for a multi-property rehab in Scottsdale — our $39 CSVs at /arizona pull the same ROC data pre-enriched with the contact info the ROC doesn't publish. Arizona accounts for roughly 6.5% of the 614,114 active licenses we mirror across 13 states.

Either way, the verification rules above don't change. Even from a pre-enriched roster, the last check before you sign is to pull the license up on the ROC portal and confirm the classification, status, and bond yourself.

Next step

Browse licensed Arizona general contractors, electricians, plumbers, HVAC contractors, roofers, pool contractors, fire-protection contractors, landscapers, carpenters, concrete contractors, masons, drywall contractors, tile contractors, excavating contractors, painters, or flooring contractors — every record sourced from the ROC registry above, with the contact info the ROC doesn't publish.

Or run a one-off check at the official AZ ROC Contractor Search.