How do you check a roofing contractor license in California?
Look the license number up on the Contractors State License Board (CSLB) website at cslb.ca.gov, using the Check a License tool, before you sign anything. CSLB also takes the check by phone at 800-321-2752. A listed number does not guarantee validity, so confirm the status, not just that the number exists.
- Ask for the license number. Under state law it must appear on ads, business cards, bids and contracts (Business and Professions Code section 7030.5).
- Enter it at cslb.ca.gov. If there is no number, search by business or contractor name.
- Check that the status is active and that C-39 Roofing is a listed classification.
- Open the bond and workers' compensation sections and check the dates.
- Match the name, the address of record and the personnel to the person at your door.
- Save or print the page with the date.
What does a C-39 license mean?
C-39 is California's Roofing classification, and roofing work requires it. If the roofer holds a different classification, ask CSLB what it covers before you proceed. CSLB states that C-39 contractors must carry workers' compensation or have a certification of self-insurance on file, even with no employees, so a C-39 cannot claim the no-employee exemption.
The minor work exemption is narrow. Since January 1, 2025, work under $1,000 in labor and materials can be done without a license only if the job needs no permit and the person uses no employees (Business and Professions Code section 7048, AB 2622). A roof replacement is far above that figure and normally needs a permit.
When is a license required, and what about the person at your door?
A license is required for any construction job above a small dollar threshold, so a roof replacement always qualifies. CSLB's January 2023 storm release put that figure at $500 in labor and materials. AB 2622 raised the exemption to $1,000 from January 1, 2025, only where the job needs no permit and the person has no employees, as described above.
The person who knocks may not be the contractor. CSLB says contractors' salespeople must be registered as Home Improvement Salespersons, and it advises asking to see the registration card and a photo ID. It also says to check the pocket license to confirm the person representing the business is listed as personnel of record. If neither checks out, the visit ends there, however good the offer sounds.
What should you ask for besides a license number?
Ask for proof in hand, because a number on a bid is only a claim. CSLB's hiring guidance points to these items:
- The pocket license and a photo ID that match
- The Home Improvement Salesperson registration card, if a salesperson is selling the job
- A certificate of insurance, or the names of the carrier and agency
- A contract that describes the contractor's workers' compensation and general liability coverage
- References from past customers, suppliers or subcontractors, and a current business address and phone number
- A job file, kept by you, with every paper, email and payment record
Workers' compensation matters because, without it, you could be liable for an injury on your property, and you should ask your own insurer about that exposure. General liability is not required by the state, so ask how damage to your home would be covered if the roofer carries none.
What do you do with the lookup result before you sign?
Turn it into a short file and a decision. A clean lookup is permission to keep comparing, not a reason to sign the first bid.
- Print or save the license page, dated, in your job file
- Compare the name and address of record with the estimate and the contract
- Check that the license number on the contract is the one you looked up
- Compare at least three written bids on the same scope, using the line-by-line estimate guide
- Keep payments tied to finished work and hold the final payment until you are satisfied
For storm questions, CSLB runs a Disaster Hotline at 800-962-1125, and its general line is 800-321-2752. Homeowners in Alameda and across the county can use the same lookup, whichever city's permit office handles the job.

What do the bond and insurance lines tell you?
They tell you whether protection exists, not whether the work is good. California contractors must hold a $25,000 contractor license bond (Business and Professions Code section 7071.6, since January 1, 2023). CSLB notes it may not cover multiple complaints or projects worth more than the bond, and that bonds do not guarantee competence or financial integrity.
Workers' compensation protects you if someone is hurt on your property. CSLB advises requesting a certificate of insurance, or the carrier and agency names. General liability is not required by the state, so ask how damage would be covered if it is missing.
| Line on the CSLB page | What you want to see |
|---|---|
| Status | Active, no suspension |
| Classification | C-39 Roofing |
| Bond | Current $25,000 contractor bond |
| Workers' comp | Active policy or self-insurance on file |
| Personnel | The person you met is listed |
| Complaints | Read any disciplinary action on the license |

What red flags show up after a storm?
Door-knockers, pressure and paperwork shortcuts. CSLB's storm guidance says not to rush into repairs, not to hire the first contractor who comes along, and never to sign over insurance payment checks. Other warning signs:
- No license number, or one that fails the lookup
- A demand for more than 10% or $1,000 down, whichever is less (section 7159.5)
- A request for cash, or payments that run ahead of the work
- Work starting before the cancellation period ends
- A promise to handle or negotiate your insurance claim
California allows only the policyholder, the insurer or a licensed public adjuster to negotiate a claim. A roofer can document damage, but not negotiate. Home improvement contracts give you three business days to cancel, five if you are 65 or older, and emergency repairs you request yourself are an exception. Send the notice in writing before the deadline.
What if the lookup shows a problem?
Stop and ask. A suspended or expired license, a lapsed bond, a missing workers' compensation entry, or a name that does not match the person you met are all reasons to pause. Ask the roofer to explain in writing, and call CSLB at 800-321-2752 if the answer is vague. Recent disciplinary actions are worth reading in full. If the license is simply not on file, do not hire that contractor, because the protections tied to a license, including the bond and CSLB's complaint process, are missing. The database can lag behind recent changes, so a fresh problem deserves a phone call, not a guess.
What do past rescue jobs have in common?
They started with a contractor who vanished, and none of it showed up in a lookup. In Alameda, one customer's previous crew left only underlayment on the roof and a leak, and the roof was finished in a couple of days afterward. Another customer's earlier contractor would not return, and a different crew took over. A third had an old experience with a roofer who left the back side unfinished.

These stories show why order matters: check first, pay in steps tied to progress, and get the scope in writing. One customer was asked for nothing until the finished work had been inspected, which is one customer's experience and not a rule. CSLB's own advice is to avoid making the final payment until you are satisfied with the job.
What about permits and local rules?
The estimate should state who pulls the permit, and you should confirm it with the building department. In Alameda County, city building departments handle permits inside their cities, and the county handles unincorporated areas. Our Alameda County coverage page explains the split.
Run the check on every roofer you consider, keep a dated printout in your job file, and only then compare bids. For a free written estimate to compare, call or request one.

