Research by DoINeedAPermit Research Team · Updated May 2026
The Short Answer
Full roof replacements, tear-offs, and material changes require a permit from the City of Florence Building Department. Like-for-like repairs under 25% of roof area are exempt.
Florence enforces Arizona's adoption of the International Building Code (IBC) and International Residential Code (IRC), with notable local amendments specific to the Pinal County region's hot-dry climate and high-desert construction challenges. The City of Florence Building Department does NOT have a separate online permit portal — all permits must be filed in-person at City Hall or by mail, which is significantly different from larger Arizona metros (Phoenix, Tucson) that offer digital submissions. This means your timeline starts with a drive to the counter. Crucially, Florence is outside any designated hurricane or wildfire interface zone, so you won't face the secondary water-barrier or impact-resistant shingle mandates that trigger rejections in southern Florida or coastal California. However, the city strictly enforces IRC R907.4 (the three-layer rule): if your existing roof has three or more layers, a tear-off is mandatory — the city's inspectors will visually verify this in the field before approving any overlay. Material changes (shingles to metal, tile, or single-ply) require a structural evaluation if the new material is heavier, and metal roofing installations must comply with Arizona wind-resistance specifications (the state adopts 2021 IBC, which includes updated fastener tables). Roof replacements are typically over-the-counter approvals if they're like-for-like and the scope is clear; expect 3–5 business days if you file with complete documentation (as-built roof plan, material specs, fastener schedule).

What happens if you skip the permit (and you needed one)

Florence roof replacement permits — the key details

Florence, Arizona, sits in the high Sonoran Desert at approximately 1,800 feet elevation, with summer temperatures regularly exceeding 110°F and seasonal monsoon winds (July–September) that can gust 40+ mph. The city adopts the 2021 International Building Code and 2021 International Residential Code, which means IRC R905 (roof-covering requirements) and IRC R907 (reroofing standards) are the governing law. The most critical local rule is the three-layer limitation: IRC R907.4 states that you cannot overlay a third layer of roofing. Florence's Building Department enforces this strictly — inspectors photograph existing conditions during the permit walk-through or before approval. If your home was built in the 1970s–1990s and has never had a full tear-off, you almost certainly have two or three layers of asphalt shingles. The city requires you to declare the number of existing layers on the permit application (Form A-1, or your roofing contractor's proposal). If you claim one layer but the inspector finds two or three, the permit is voided, work must stop, and you'll be cited for unpermitted work. A full tear-off then becomes mandatory, and you'll re-file for a tear-off-and-replace permit — adding 2–3 weeks and re-inspection fees.

Material selection and fastening specifications are non-negotiable. If you're staying with asphalt shingles, you need to specify the product (manufacturer, model, weight, impact rating if applicable), the underlayment type (synthetic or 30-lb felt), and the fastening pattern (4 fasteners per shingle in the nailing zone, or per the shingle manufacturer's specifications — IRC R905.2 is explicit here). If you're switching to metal roofing, the permit application must include a detailed panel layout, fastener schedule, and roof pitch diagram — this is because metal roofing loads the structure differently than shingles, and IRC R907.3 requires structural adequacy. Tile or slate roofing? The city may require a structural engineer's sign-off, because ceramic tile weighs 12–16 pounds per square foot (versus 3–4 for asphalt shingles), and older homes were not designed for that load. In Florence's hot climate, radiant barriers (reflective foil under the sheathing) are common upgrades and don't require separate permitting if they're installed during a full tear-off, but you must declare them on the permit.

Underlayment and edge details are where many residential permits get rejected. IRC R905.2 (asphalt shingles) requires underlayment over the entire roof deck. In Florence's dry climate, the code permits standard synthetic or asphalt-saturated felt, but you must extend ice-and-water-shield or equivalent secondary barrier to at least 24 inches from the outer wall line (measured horizontally). This sounds redundant in Arizona — ice dams are rare in Florence — but the code is written nationally, and the inspectors are trained to enforce it uniformly. The city's permit form includes a checklist: underlayment type, extension distance, eaves flashing, valley treatment (open or closed), ridge vent details. If your roofing contractor submits a generic permit sketch with no underlayment spec, the city issues a rejection within 2–3 days (email), and you'll need to resubmit with annotated roof plans showing materials and sequences.

Fastening patterns and wind resistance are critical in Florence because monsoon-season wind gusts are common. The 2021 IBC references ASTM D3161 (wind-resistance testing for shingles), and manufacturers assign wind ratings (130–230 mph for high-end products). The city does not mandate impact-resistant shingles (that's a Florida/coastal requirement), but if you're installing metal roofing, all fasteners must be stainless steel or hot-dipped galvanized, and the spacing must comply with the panel manufacturer's wind-load charts — Arizona high-desert UV and thermal cycling degrade low-quality fasteners quickly. The permit application should include the roofing product's wind-resistance rating and a photo or spec sheet. If you're using a contractor, they should provide this; if you're doing owner-builder, you'll need to research it yourself and include it in your application packet.

Inspection sequence and timeline: Once the City of Florence Building Department approves your permit, inspections are scheduled by phone call (the city does not yet offer online scheduling). An initial inspection is required before tear-off or before overlay work begins — the inspector verifies the number of existing layers and deck condition. An in-progress (framing/underlayment) inspection is required after underlayment and flashing are installed but before shingles or final roofing material. A final inspection closes the permit once the roof is complete, gutters are reinstalled, and cleanup is done. Each inspection must be requested 24 hours in advance; the city typically responds within 1–3 business days. Total timeline: permit approval 3–5 days, work completion 3–10 days (depending on roof size), final inspection 1–3 days. Owner-builders are allowed under Arizona Revised Statutes § 32-1121 and can pull their own permit, but they must be present for all inspections and sign affidavits confirming they are the property owner and will personally supervise the work.

Three Florence roof replacement scenarios

Scenario A
Like-for-like asphalt shingle re-roof, single existing layer, owner-builder, 1,800-sq-ft ranch home
You own a 1970s single-story ranch in central Florence (off Main Street, outside any flood or wildfire zone). The roof is original asphalt shingles, appears to have one layer underneath, and you plan to tear off and reroof with the same 30-year architectural shingles (e.g., CertainTeed Landmark or equivalent). As an owner-builder, you pull the permit yourself at City Hall. The application form asks for scope (tear-off-and-replace), roof area (approximately 2,100 sq ft of sloped surface), existing layers (one visible), new material (asphalt shingle, 3-tab or architectural, specify brand and weight). You attach a site photo and a simple roof plan showing the slope and ridge direction. Cost: permit fee is typically $125–$200, calculated on the basis of roof area or flat fee (Florence's fee schedule is $0.10–$0.15 per square foot, so 2,100 sq ft = $210–$315 — confirm with the city). Submission is in-person or by mail; turnaround is 3–5 business days. The city approves it over the counter because it's a simple like-for-like swap with no structural questions. You schedule the initial inspection (tear-off stage), which typically occurs within 1 week. The inspector verifies the number of layers and deck nailing (IRC R907.1). Once the old roof is off and the deck is inspected, you install underlayment (synthetic or 30-lb felt), extended to 24 inches at the eaves, then the new shingles with proper fastening (4 fasteners per shingle, per manufacturer, or 6–8 fasteners in high-wind areas). After underlayment and flashing are installed, you request the in-progress inspection. Once shingles are down and gutters reinstalled, you request the final inspection. Total timeline: 2–3 weeks from permit approval to final sign-off. Total permit and inspection cost: $200–$300 (permit fee only, no re-inspections for errors). This is the best-case scenario because there are no material changes, no structural questions, and no code deviations.
Tear-off required | Single existing layer confirmed | Asphalt shingles, 30-year architectural | 2,100 sq ft roof area | Permit fee $200–$300 | Owner-builder allowed, 3 inspections | Total timeline 2–3 weeks
Scenario B
Shingles-to-metal conversion with existing caliche substrate, contractor-pulled permit, HOA-restricted neighborhood
You own a 2005-era home in a Florence HOA community (e.g., San Tan Valley subdivision area). The roof is 20-year-old asphalt shingles, and you want to upgrade to standing-seam metal roofing (10-year lifespan, low-maintenance, high reflectivity ideal for the desert). Two complications arise: (1) Metal roofing is heavier than shingles, so you need structural verification; (2) your HOA has restrictive covenants on roof color and material. The roofing contractor (a licensed, bonded Arizona roofing company) pulls the permit on your behalf. They submit a detailed application that includes: (a) the existing roof conditions and layer count (two layers — confirmed by attic inspection photos); (b) new material specs (e.g., 24-gauge steel, 2.5-inch seam height, pre-finished (Kynar 500 polyester paint system), specific color (e.g., charcoal gray or bronze — HOA-approved color with documentation); (c) a roof loading analysis or structural engineer's letter confirming that the existing framing can support the metal panel weight (5–8 lb/sq ft, versus 3 lb/sq ft for asphalt). The contractor also submits your HOA architectural approval letter. The City of Florence Building Department reviews this in-person (the contractor walks it in) — because of the structural change and the detailed specs, this is not an over-the-counter approval. The city's plan reviewer (or the building official) may ask clarifying questions: fastener type (stainless steel or hot-dipped galvanized per ASTM A653), underlayment beneath the panels (synthetic required, per IBC 1511), wind-load verification (24-gauge standing seam typically rated 150+ mph, adequate for Florence monsoon winds). The contractor revises if needed and resubmits. Approval takes 5–10 business days. Inspection sequence: (1) initial (tear-off and deck verification — the inspector will check for soft spots, rot, or moisture); (2) underlayment and flashing (after synthetic is stapled down and ridge caps/eaves flashings are seated); (3) final (panels buttoned up, all fasteners tight, gutters and downspouts installed). Cost: permit fee $250–$400 (material change + structural review), contractor's bid $8,000–$15,000 for materials and labor (metal roofing is premium-priced in the desert). Total timeline: 4–6 weeks (permit review + work + inspections). The HOA approval requirement adds 1–2 weeks upfront; confirm with the city that they won't issue a permit without it.
Material change shingles to metal | Tear-off required (two existing layers) | Structural engineer letter may be required | Permit fee $250–$400 | HOA approval required before permit | Stainless-steel fasteners, synthetic underlayment mandatory | 4–6 weeks total timeline
Scenario C
Three-layer detection on overlay attempt, owner claims one layer, inspector finds three, forced tear-off scenario
You own a 1985 home in a rural Florence area (unincorporated Pinal County fringe, but within city limits). You want to save money and do an overlay — applying new shingles directly over the existing roof without tearing off. You submit a permit application claiming one existing layer (you peeked in the attic and saw what looked like original shingles). The city approves it as a simple overlay, fee $100–$150. Work starts; a roofer begins stripping back shingles at one corner to install new flashing, and finds two layers of shingles, plus an old tar-and-gravel layer underneath (the original 1970s roof). The roofer stops and calls the city. An inspector is dispatched (within 1–2 days) and photographs the three-layer condition. The city issues a violation notice (Notice to Correct): the permit is voided, work must stop immediately, and you must either: (a) obtain a new tear-off-and-replace permit, or (b) pay a $500–$1,000 penalty for misrepresenting the roof condition and face enforcement action. Option (a) is standard: you file a new permit ($150–$250 for tear-off), tear the roof off (3–5 days), and re-inspect before new installation. This adds 2–3 weeks and $200–$300 in re-permit and re-inspection fees. Option (b) is painful: you pay the penalty, the inspector escalates to code compliance, and you may be ordered to remove the roof at your own expense or face a lien. The city takes the three-layer rule seriously because it's a fire-code and structural-load safety issue — multiple layers add weight and thermal stress, and they trap moisture. Your initial cost savings of $2,000–$4,000 (overlay labor + materials, versus tear-off + haul-away) evaporate, and you end up spending more. This scenario underscores why the initial inspection is critical: the inspector will catch this early, and you'll know the truth before work begins.
Three-layer detection triggers tear-off mandate | Initial overlay permit voided, must re-file | Tear-off permit $150–$250, additional fee | $500–$1,000 penalty for misrepresentation possible | Stop-work order issued, work halted | 2–3 weeks added timeline and $2,000+ extra cost | IRC R907.4 strictly enforced in Florence

Every project is different.

Get your exact answer →
Takes 60 seconds · Personalized to your address

Arizona's High-Desert Roofing Climate: Why Florence's Code Enforcement Differs from Coastal States

The City of Florence's permit process is simplified compared to larger Arizona metros because Florence's Building Department is small (often one or two plan reviewers and a handful of inspectors). There is no online portal; all permits are filed in-person at City Hall (155 West Main Street, Florence, AZ 85232, Monday–Friday 8 AM–5 PM, phone 520-868-7564 — confirm hours before visiting). This means you cannot email a PDF and get a 24-hour auto-response. You drive in, submit your application packet in triplicate (original + two copies is typical), and the clerk logs it in and assigns it to a reviewer. Turnaround for residential roof permits is typically 3–5 business days for like-for-like work, and 5–10 days if there are material changes or plan review questions. Once approved, you have a permit number and can schedule inspections by phone. Florence does not charge per-inspection fees (unlike some larger municipalities that charge $50–$100 per inspection); inspections are included with the permit. However, if the inspector finds code violations (e.g., improper fastening, missing underlayment), you'll be issued a Notice to Correct and must request a re-inspection after remediation. This is free but adds 2–3 days to your timeline. For owner-builders, the application includes an Owner-Builder Affidavit, which you sign, affirming that you are the property owner and will personally supervise the work. Licensed contractors do not need this affidavit; their contractor's license number and proof of general liability insurance ($1–2 million typical) satisfy the city's bonding requirement. If you're hiring a contractor, verify that they have a current Arizona Contractor's License (search https://ard.az.gov/contractors/ to confirm), and ask them to obtain the permit themselves — they're familiar with the process and responsible if it's done wrong.

Common Permit Rejections and How to Avoid Them in Florence

One often-overlooked requirement is the roof-deck inspection and repair if soft spots, rot, or water damage are found during the tear-off. IRC R907.1 requires that the roof deck be sound and dry before new roofing is applied. If the inspector discovers rotted or delaminated plywood (common in older homes with previous leaks), you must repair or replace the damaged section before new roofing is installed. This is a code violation that stops the project. The city will issue a Notice to Correct, and you cannot proceed until the deck is sound. Repair costs vary: a small patch (e.g., 10–20 sq ft of plywood replacement) costs $300–$600; larger repairs can run $1,500–$3,000. To avoid surprises, ask your roofing contractor to inspect the deck carefully during the tear-off phase and give you an estimate for any repairs before they order new materials. Include this in your initial cost projection. Another less-obvious issue is flashing detail — specifically, the flashing around chimneys, vents, skylights, and valleys. IRC R905.2.8 specifies that flashing must be installed per manufacturer and must be sealed or cemented to prevent water intrusion. Florence inspectors are trained to check this carefully because monsoon-driven rain can exploit poor flashing. If your contractor installs shingles but forgets to apply roofing cement under the flashing edge or skips the nailing per code, the inspector will issue a Notice to Correct at the final inspection. Solution: walk the roof with your contractor before final inspection and verify that all flashing is sealed and fastened per the spec sheet.

City of Florence Building Department
155 West Main Street, Florence, AZ 85232
Phone: 520-868-7564
Monday–Friday, 8:00 AM–5:00 PM (closed holidays; call to confirm)

Common questions

How much does a roof-replacement permit cost in Florence, Arizona?

Permit fees are typically $100–$300 for residential roof replacements, calculated as a flat fee or on the basis of roof area ($0.10–$0.15 per square foot). A 2,000-sq-ft roof is usually $200–$300. Material-change permits (shingles to metal or tile) may be $250–$400 if a structural review is required. Call the City of Florence Building Department at 520-868-7564 to confirm the current fee schedule, as it is updated annually.

Can I overlay a new roof over existing shingles in Florence?

Only if your home has one existing layer of roofing. IRC R907.4, which Florence enforces strictly, prohibits a third layer. If you have two or more layers, a full tear-off is mandatory. The inspector will verify the number of layers before approving the permit or during the initial inspection. If you misrepresent the number of layers, the permit will be voided and you'll be ordered to stop work.

Do I need a licensed contractor to pull a roof permit in Florence?

No. Owner-builders (property owners) can pull their own roof permit under Arizona Revised Statutes § 32-1121. You'll sign an Owner-Builder Affidavit, confirming that you own the property and will personally supervise the work. Licensed contractors can also pull permits on your behalf; many homeowners prefer this because contractors are familiar with the code and responsible for compliance.

What if the inspector finds three layers of roofing during my overlay permit?

The permit is voided immediately, and you must stop work. You'll receive a Notice to Correct and be required to obtain a new tear-off-and-replace permit. This adds 2–3 weeks and $200–$300 in additional permit and inspection fees. You may also face a $500–$1,000 penalty if you misrepresented the roof condition on the original permit. To avoid this, ask your roofer to verify the number of layers before you file the permit.

How long does a roof-replacement permit take in Florence?

Permit approval takes 3–5 business days for like-for-like shingle replacements. Material-change permits (shingles to metal) take 5–10 days if structural review is needed. Work timeline depends on roof size (3–10 days), and inspections add 1–3 days each (initial, in-progress, final). Total project timeline is typically 2–4 weeks from permit approval to final inspection sign-off.

Are there any roofing material restrictions in Florence, Arizona?

No specific material bans, but material changes (shingles to metal, tile, or slate) require structural adequacy verification if the new material is significantly heavier. Metal roofing is popular in the desert for heat reflection and durability and is widely permitted. Asphalt shingles, composition shingles, tile, and slate are all code-compliant. Choose based on your budget, climate resilience, and aesthetic preferences — the city does not restrict color or type beyond what the IRC R905 requires.

Does Florence require impact-resistant or hurricane-rated shingles?

No. Florence is not in a hurricane zone, and impact-resistant shingles are not required. Standard asphalt shingles with 130+ mph wind rating are adequate for Florence's monsoon-season winds. If you choose impact-resistant shingles for durability or resale value, that's optional and may slightly increase cost but will not be required by the city.

What happens if I don't pull a permit for my roof replacement?

If discovered, you'll face a stop-work order ($500–$1,200 fine), a lien on the property for unpaid violations, insurance claim denials, and resale complications (Arizona sellers must disclose unpermitted work). Lenders often refuse to finance homes with unpermitted major work. The contractor cannot be sued for defects if the work was unpermitted. It's far cheaper and faster to get the permit upfront.

Does the City of Florence have an online permit portal?

No. Florence does not currently offer online permit submissions. All permits must be filed in-person at City Hall (155 West Main Street, Florence, AZ 85232) or by mail during business hours (Monday–Friday, 8 AM–5 PM). This is different from larger Arizona cities like Phoenix or Scottsdale, which have digital portals. Bring original + two copies of your application.

What roof inspections are required by the City of Florence?

Three inspections are standard: (1) initial (before tear-off or overlay, to verify the number of existing layers and deck condition); (2) in-progress (after underlayment and flashing are installed, before final roofing material); (3) final (after shingles/panels and gutters are complete). Each inspection is requested by phone (24-hour notice required), and inspectors verify compliance with IRC R905 and R907. There are no per-inspection fees; they are included in the permit.

Disclaimer: This guide is based on research conducted in May 2026 using publicly available sources. Always verify current roof replacement permit requirements with the City of Florence Building Department before starting your project.