Roofing is construction under 871 IAC 23.82(2)(k), so every roofer earning $2,000 or more a year must register as a contractor with DIAL under Iowa Code chapter 91C — workers' comp evidence, an unemployment insurance number, and a $25,000 bond if based out of state. There is no state roofing license or exam.
Iowa Code § 103A.71 targets residential contractors who repair or replace roof systems after a catastrophe such as hail, wind, or tornado. They may not advertise or promise to rebate any part of the insurance deductible, may not represent or negotiate with the owner's insurer, and must give a signed 'Notice of Contract Obligations and Rights' in 10-point bold type. A contract that breaks any of those rules is void, and rebates or claim negotiation are consumer fraud under § 714.16.
The state sets the license floor; the county or city permit office controls filing, inspections, and local rules wherever the job site sits.
Registration and § 103A.71 apply statewide; reroof permits and inspections are local. Whether a permit is required for a reroof depends on the city or county code.
The local offices section below names the exact permit desk for every Iowa county on file.
Each row names the issuing authority, cost, timeline, citation, and status behind the requirement — verified against the official source.
Published fees from the issuing authorities, as of October 2026. Local permit fees vary by project and jurisdiction — the basis is stated where a flat number does not exist.
Out-of-state crews following hail need the $25,000 bond and DIAL registration before the first Iowa job — and every catastrophe contract needs the statutory notice.
If you rebate the deductible or negotiate the claim, the homeowner owes nothing under the contract (§ 103A.71(5)).
You may place a sign on the homeowner's property only with consent and only if the owner receives no compensation for it (§ 103A.71(2)).
A practical sequence for a new roofing contractor in Iowa. Actual agency processing times are noted in the ledger above.
Each item names the issuing authority, cycle, and citation.
Statutory consequences with their citations — not estimates, not “commonly cited” guesses.
DIAL issues a written citation for failing to register, for substantially incomplete or inaccurate registration information, or for an out-of-state contractor's missing bond.
A contractor not registered as required may not be awarded a contract to perform work for the state or a state agency.
A residential contractor who promises to rebate an insurance deductible, negotiates the owner's insurance claim, or skips the Notice of Contract Obligations and Rights on catastrophe repairs has a void contract; deductible rebates and claim negotiation are also consumer fraud under § 714.16.
Inside city limits, the city office listed here issues the permit; the county office serves unincorporated areas. Every office links to its official page.
Every fact in this file was checked against these official sources on October 2026.
Pending verification: DIAL's Contractor Registration page says contractors with employees must carry workers' compensation 'and a $25,000 bond'; Iowa Code § 91C.2(3) and 481 IAC 465.4(11) require the $25,000 bond only of out-of-state contractors — we follow the statute · DIAL's Contractor Registration page describes registration as a one-year credential renewed annually, while 481 IAC 465.4(9) also prices a $150 three-year registration; which terms DIAL currently issues outside the PMSB combined application was not confirmed · Whether individual Iowa cities (e.g. Des Moines, Cedar Rapids) require their own general or trade contractor license or registration before issuing building permits for this trade — no statewide preemption of local general-contractor licensing was found
General information, not legal advice. Always confirm requirements, deadlines, and forms with the issuing authority before filing or contracting.
Store licenses, permits, policies, and renewal dates in one place.