Research by DoINeedAPermit Research Team · Updated May 2026
The Short Answer
Full roof replacements, tear-offs, and material changes require a Keizer permit. Like-for-like repairs under 25% of roof area may be exempt, but the city treats 3-layer roofs strictly under IRC R907.4 — you must confirm existing layer count before proceeding.
Keizer's Building Department enforces Oregon state building code (currently the 2020 IBC/IRC, adopted by the state). The key city-level distinction is that Keizer sits in two climate zones — Willamette Valley (4C, 12-inch frost depth) and eastern foothills (5B, 30+ inches) — which affects ice-water-shield extension requirements and deck attachment specs. More importantly, Keizer uses a permit-portal intake system that flags roof applications automatically if the application mentions a third layer; the city will reject the application before plan review and require a tear-off certification from you or your contractor. This is stricter than neighboring Salem, which allows case-by-case waivers. Additionally, Keizer does not currently participate in the state's streamlined commercial-roof exemption for like-for-like replacements; residential like-for-like under 25% may qualify for administrative exemption if you call ahead and get verbal pre-approval from the permit tech, but this is not guaranteed and depends on the inspector on duty. Budget 2–3 weeks for typical residential re-roof permits if you have all documents ready (deck photos, existing layer count, fastening schedule, ice-water-shield spec).

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

Keizer roof replacement permits — the key details

Keizer Building Department requires a permit for any roof replacement that involves a tear-off, material change, or affects more than 25% of the roof area. The core rule is IRC R907.4: if your roof currently has two or more layers of existing shingles, you must tear off all layers to bare deck before installing new cover. Keizer enforces this rule rigidly — the city's intake system will auto-flag applications that mention 'overlay' if deck photos or the applicant's self-certification shows a pre-existing layer count of 2 or more. If the city detects a third layer during final inspection, the inspector will stop work and issue a notice of violation. You must then hire a roofing contractor to remove all layers, expose the deck, and call for a re-inspection before you can resume. This often delays projects by 2–4 weeks and adds $1,500–$3,000 in unexpected tear-off labor. The lesson: get a roofer to photograph and count existing layers before you file the permit application. Provide this documentation with your permit request, and you'll avoid rejection or mid-project stops.

Underlayment and fastening specifications are non-negotiable in Keizer. The 2020 IRC (adopted by Oregon, which Keizer follows) requires that all roof decks be covered with underlayment meeting ASTM D226 Type II or higher. For the Willamette Valley (12-inch frost depth), ice-water-shield must extend at least 24 inches up from the eave on unheated attics; for east-county properties (30+ inch frost), extend it 36 inches. The permit application requires you or your contractor to specify the underlayment product by name (e.g., 'GAF Bituthene WB 200' or 'Owens Corning WeatherLock') and provide the fastening schedule — nail type, spacing, and edge distances per manufacturer specs. If you submit a vague application saying 'standard asphalt underlayment and industry-standard nails,' the permit tech will request clarification, delaying your issuance by 3–5 days. Fastening is especially important if you're in a high-wind zone (Marion County includes areas subject to 85+ mph design wind loads per ASCE 7-16); the city may require ring-shank or screw fasteners instead of smooth-shank nails. Get your contractor's install docs ready before applying.

Material changes trigger a structural review. If you're replacing asphalt shingles with metal, tile, or slate, Keizer requires a structural engineer's affidavit confirming that the deck can support the new material's weight. Tile and slate are significantly heavier than asphalt (15–20 lbs/sq ft vs. 3–4 lbs/sq ft), and many older Keizer homes (built before 1980) have 2x6 or 2x4 rafters that may not meet current load tables under 2020 IBC Table 2308.2. The engineer's report costs $300–$800 and adds 1–2 weeks to the permitting timeline. However, metal roofing (standing seam or metal shingles) is typically only 1–2 lbs/sq ft and rarely requires structural review. If you're considering tile or slate, budget the engineering cost early and ask your contractor if they've worked with a structural engineer familiar with Keizer code before; some contractors have pre-vetted engineer relationships that speed the process.

Keizer's online permit portal requires digital submission of the roof-replacement form (available at the city website or via the portal itself). The form asks for: property address, square footage of roof area being replaced, existing material type and layer count, new material type, underlayment product, fastening schedule, and contractor name/license number. If the contractor is pulling the permit, they will upload their professional liability insurance certificate and roofing license. Residential owner-builders may pull the permit themselves if the home is owner-occupied; you'll need to provide a signed statement affirming owner-occupancy and contractor insurance (if using a roofer). The permit fee is typically $2.00–$3.50 per roofing square (100 sq ft) of replaced area, with a minimum fee of $75–$150. A 2,000 sq ft roof re-roof (about 20 squares) will cost $150–$300 in permit fees. Processing time is 5–10 business days for complete applications; incomplete submissions (e.g., missing underlayment spec or layer-count photos) extend this to 2–3 weeks.

Inspections and final approval in Keizer follow a two-stage sequence. The first inspection occurs after the roof deck is exposed and before underlayment is installed; the inspector confirms that the deck is sound (no rot, no missing boards), that all old layers have been removed, and that fastening holes from the old roof have been properly sealed or will be covered by the new underlayment. The second inspection happens after the new shingles or metal panels are installed; the inspector verifies fastener type, spacing, ice-water-shield extension, flashing details at valleys and penetrations, and ridge vent installation. If you're using a contractor, they will schedule these inspections via the portal or by calling the permit tech. If you're doing owner-builder work, you must call the Building Department directly at the number listed on your permit to request inspection dates. The typical turnaround is 2–3 business days. Once both inspections pass, the permit is closed and you receive a final sign-off. Keep this sign-off for your records; you'll need it if you ever file an insurance claim or sell the home.

Three Keizer roof replacement scenarios

Scenario A
Like-for-like asphalt shingle replacement, single layer existing, Willamette Valley ranch, 1,800 sq ft roof
You own a 1970s ranch in southeast Keizer (Willamette Valley climate zone 4C), 1,800 sq ft under roof. The existing shingles are 20-year-old 3-tab asphalt, one layer, and you want to replace with architectural asphalt shingles (same weight class, similar color). You hire a licensed roofer who pulls the permit. The contractor includes deck photos showing one layer only, a GAF Bituthene WB 200 underlayment spec sheet, and a fastening schedule (6d ring-shank nails, 6 per shingle, 4-inch spacing). Permit fee: approximately $270 (1,800 sq ft = 18 squares × $3.00/square, plus a $54 plan-review surcharge, rounded to $324). The application is submitted online; the permit tech calls the contractor within 2 days to confirm no third layer exists, and issues the permit. Tear-off and new installation take 2–3 days. First inspection (deck check) happens same week; the inspector approves the deck and ice-water-shield placement (24 inches up from eaves per IRC R905.2.8.2 for 12-inch frost depth). Second inspection (final) occurs after shingle installation; pass issued. Total timeline: permit issuance 3 days, install 3 days, inspections 5–7 days, final approval 1 day. Total cost: $324 permit + $6,000–$8,500 labor/materials = approximately $6,324–$8,824. No structural review required. This is a straightforward permit-required project with high approval likelihood.
Permit required (material change + tear-off) | Deck photo required showing layer count | Bituthene WB 200 or equivalent | Ring-shank fasteners per schedule | Ice-water-shield 24 inches up (4C valley) | Permit fee $300–$350 | Labor/materials $6,000–$8,500 | Total $6,300–$8,850 | Timeline 10–14 days
Scenario B
Partial shingle repair (damaged section, <25%), three-tab replacement only, northeast Keizer duplex (owner-builder exempt attempt)
You own a duplex in northeast Keizer, and a storm tore shingles off one side of the roof (roughly 150 sq ft of the 2,200 sq ft total roof). You want to patch it with matching 3-tab shingles without a full re-roof. The key question: how many layers exist? You climb up and find three layers of old shingles already on the deck. Under IRC R907.4 and Keizer's strict enforcement, a tear-off is mandatory — you cannot overlay a third layer. However, if you only have one or two existing layers, a partial repair under 25% of roof area may qualify for administrative exemption if you call the Building Department's permit tech in advance, get verbal pre-approval, and commit to like-for-like materials. Since you have three layers, you have two options: (1) you must permit a full tear-off and re-roof (costly), or (2) you request a waiver from the building official citing 'minor damage repair.' Waivers are rarely granted in Keizer; the city's stance is 'IRC R907.4 is not negotiable.' Most homeowners in this scenario elect to get a bid for full tear-off. If you do proceed with a permitted full re-roof, the cost balloons to $7,000–$10,000 instead of $800–$1,200 for a patch. If you illegally patch without a permit and the city or your neighbor reports it, you face a $250–$500 stop-work fine plus double permit fees ($400–$800) to legalize later. Outcome: 'depends' because it hinges on existing layer count, but practically, three-layer roofs in Keizer almost always require full permits.
Depends on layer count | 3+ layers = full tear-off required (IRC R907.4) | Partial repair exemption unlikely with 3 layers | Full permit route: $300–$400 fee | Waiver request rarely approved in Keizer | 150 sq ft patch alone: $800–$1,200 | Full re-roof: $7,000–$10,000 | Risk of $250–$500 fine + double fees if unpermitted
Scenario C
Metal standing-seam roof replacement over existing asphalt (material change), east Marion County hillside property, 2,400 sq ft, structural deck concern
You own a 1960s A-frame on a hillside in east Keizer/Marion County (climate zone 5B, 30+ inch frost). Existing roof: two layers of asphalt shingles. You want to upgrade to standing-seam metal roofing for durability and aesthetics. Metal weighs only 1–2 lbs/sq ft, so structural capacity is not a concern — a structural engineer's affidavit is not required. However, the material change means you must permit the project. Your contractor pulls the permit and specifies: tear-off to bare deck, 1.5-inch plywood deck repair (old wood is soft in places), ASTM D226 Type II underlayment, standing-seam metal panels with ring-shank fasteners, and 36-inch ice-water-shield extension (30+ frost depth). Permit fee: approximately $350 (2,400 sq ft = 24 squares × $3.50/square for a material-change surcharge, capped at $400). The application is submitted; the city's tech notes 'metal material change' and routes it to the plan-review engineer, who checks deck repair scope and ice-water-shield placement. Plan review takes 7–10 days. Minor clarification requested: the contractor must confirm plywood repair will include fastening per IRC R803.2.1 (16-inch center spacing for 30+ psf snow load in zone 5B). Contractor uploads revised fastening schedule; approval issued. Tear-off, deck repair, and installation take 4–5 days. First inspection (deck) happens mid-way; second inspection (final metal install + flashing) after completion. Total timeline: permit application 1 day, plan review 10 days, permit issuance 1 day, installation 5 days, inspections 7 days, final approval 1 day — approximately 25 days start to finish. Total cost: $350–$400 permit + $9,000–$14,000 labor/materials (metal is pricier) = $9,350–$14,400. The east-county 30+ inch frost requirement for extended ice-water-shield and higher snow-load fastening adds cost versus valley properties but is non-negotiable. This scenario showcases how local climate zone and material change drive both permit complexity and installation spec.
Permit required (material change to metal) | Tear-off to bare deck required (2 layers) | Plywood deck repair per IRC R803.2.1 | 36-inch ice-water-shield (5B, 30+ frost) | Ring-shank fasteners 16-inch O.C. (snow load) | Permit fee $350–$400 | Plan review 7–10 days | Labor/materials $9,000–$14,000 | Total $9,350–$14,400 | Timeline 20–25 days

Every project is different.

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

Why Keizer flags three-layer roofs before you even submit — and what it means for your timeline

Keizer's Building Department uses an automated flag in its online permit portal: if you select 'roof replacement' and the application data or uploaded photos indicate a third (or higher) layer of existing shingles, the system blocks permit issuance and routes the application to a permit technician for manual review. The reason: IRC R907.4 (Reroofing — Limitations) states that if two or more layers of roof coverings exist on the deck, all old layers must be removed before a new covering is applied. Oregon adopted this rule in the 2020 IBC, and Keizer enforces it strictly. Many cities allow case-by-case variances or design waivers; Keizer does not. The city's position is that multi-layer roofs hide deck damage (rot, moisture, structural failure), and overlay-on-overlay work masks these problems and voids future inspections.

What this means for you: if you don't know your layer count, hire a roofer or get on the roof yourself and count before you file the permit application. If you submit an application and the city detects a third layer during their intake review, they will request clarification — and you must then either (a) provide a signed tear-off commitment from your contractor or (b) withdraw and start over with a full tear-off permit. This delay adds 1–2 weeks. If you don't discover the third layer until mid-installation (after the first inspection), the city will issue a stop-work order, your roofer must remove all layers (cost: $1,500–$3,000), and you'll reschedule inspections. Worst case: you apply with a false layer count (claiming 'one layer' when there are three), the city inspects the deck after tear-off and catches it, and you face a Notice of Violation plus required structural evaluation (if deck is compromised) and potential code-violation fines.

Timing example: A homeowner in southwest Keizer submitted a like-for-like asphalt re-roof permit on Monday. The permit tech called Tuesday and said, 'Your roofer's photos show two existing layers, but you wrote one layer on the form. Can you confirm?' The homeowner drove over, climbed up, and found three layers. They called their roofer, who said tear-off was already quoted but not detailed on the original proposal. They resubmitted the permit application with tear-off specs; the city issued a new permit ticket 3 days later. Total delay: 5 days. Had they counted layers before applying, they'd have saved a week. Lesson: layer-count verification is free insurance and the most common cause of permit delays in Keizer.

Note: if you have an older home (built before 1980), single-layer roofs are rare. Most 1960s–1990s homes in Keizer have at least two layers. Call your roofer or inspector first; don't guess.

Frost depth, ice-water-shield, and why east-county roofing costs more in Keizer

Keizer straddles two climate zones recognized by the National Weather Service and reflected in the 2020 IBC snow/frost tables: the Willamette Valley (west/south Keizer, zone 4C, 12-inch frost depth) and the eastern foothills/Marion County transition (east Keizer, zone 5B, 30+ inches). This geographic split directly affects your roof permit because ice-water-shield requirements scale with frost depth. IRC R905.2.8.2 requires that ice-water-shield (a self-adhering, rubberized membrane) be installed 'in areas where the eave protection temperature is below 32°F for more than seven consecutive days per year.' In the Willamette Valley (4C), the code-minimum extend is 24 inches up from the eave on an unheated attic. In the 5B zone (east of Highway 22), extend it 36 inches. This is because deeper frost and longer cold periods create ice dams more easily; the extra 12 inches of membrane guards against ice-dam-driven water infiltration.

Practical cost impact: GAF Bituthene WB 200 (a common ice-water-shield) costs roughly $0.40–$0.60 per linear foot installed. A 100-foot eave with 24-inch extend costs $40–$60 for material/labor; the same eave with 36-inch extend costs $60–$90. For a 2,400 sq ft roof (roughly 280–320 feet of eave), the difference is $280–$600. Multiply across a full neighborhood re-roof program, and east-county homes are consistently $300–$800 more expensive. Worse, if a roofer installs only 24 inches on an east-county (5B) home and the city inspector catches it, the roofer must redo the work — 'call me back after you've extended it to 36 inches' — delaying final inspection by 3–7 days.

How to know your frost zone: Keizer Building Department's intake notes will indicate your property's zone (you can also check Marion County soil surveys or call the permit tech). Ask your roofer upfront: 'What frost zone is my address?' and require the estimate to specify the correct ice-water-shield extend. If they quote 24 inches for an east-county address, push back — they're either quoting a west-county standard or they don't know local code. This is a common contractor mistake and a leading cause of re-inspection failures in Keizer.

Snow load is a secondary consideration but worth noting: zone 5B also carries a higher ground snow load (30–50 psf vs. 15–30 psf in 4C). This affects roof deck fastening — the 2020 IBC Table 2308.2 requires 16-inch center-to-center spacing for rafters under zone 5B snow loads versus 24-inch spacing in zone 4C. If your roofer is also doing deck repair, they must follow the correct spacing. Again, the permit intake tech can confirm your zone; put it in writing on the work order.

City of Keizer Building Department
930 Chemawa Road NE, Keizer, OR 97303
Phone: (503) 856-3617 | https://www.keizer.org/permits-licenses (or contact city for portal link)
Monday–Friday, 8:00 AM–5:00 PM (closed holidays; call to confirm summer hours)

Common questions

Can I overlay shingles on my existing two-layer roof in Keizer without tearing off?

No. IRC R907.4, adopted by Oregon and enforced strictly by Keizer, prohibits overlays when two or more existing layers exist. You must tear off to bare deck. If Keizer discovers a third layer during inspection or after you've started, the city will issue a stop-work order and require immediate removal of all layers. Plan for a full tear-off and budget accordingly.

How much does a Keizer roof-replacement permit cost?

Typically $2.00–$3.50 per roofing square (100 sq ft), with a minimum of $75–$150. A 2,000 sq ft roof (about 20 squares) costs roughly $150–$300 in permit fees. Material-change re-roofs (e.g., asphalt to metal) may incur a surcharge of $50–$100. City plan-review surcharges (for structural review on tile/slate) add $75–$200. Get an exact quote from the permit tech when you call with your square footage.

Do I need a structural engineer's report for a metal roof replacement in Keizer?

Not typically. Metal roofing weighs only 1–2 lbs/sq ft, so structural capacity is rarely an issue. However, if you're upgrading to tile or slate (15–20 lbs/sq ft), you will need a licensed structural engineer's affidavit confirming the deck can support the new load. That report costs $300–$800 and adds 1–2 weeks to permitting. Stick with metal or asphalt to avoid this hassle.

What is the difference between west-county and east-county frost-depth rules for ice-water-shield in Keizer?

West Keizer (Willamette Valley, zone 4C) has a 12-inch frost depth and requires 24-inch ice-water-shield extend. East Keizer (Marion County, zone 5B) has 30+ inches frost and requires 36-inch extend. If you install only 24 inches in zone 5B and the inspector sees it, you must redo the work. Ask your roofer to confirm your frost zone before quoting; it affects both cost and timeline.

Can I do a roof replacement as an owner-builder in Keizer without a contractor license?

Yes, if the home is owner-occupied and you pull the permit yourself. However, you must provide proof of owner-occupancy and contractor insurance (if you hire any roofer). You are responsible for scheduling inspections and ensuring work meets code. Many homeowners hire a licensed roofer to do the work and pull the permit on their behalf — this is simpler. If you do DIY, you'll need to be present for both inspections and sign off on the permit completion form.

How long does plan review take for a roof-replacement permit in Keizer?

Like-for-like asphalt re-roofs with a single existing layer typically issue within 3–5 business days (often over-the-counter). Material-change or structural-review permits (tile, slate, metal with deck repair) take 7–10 business days. Incomplete applications (missing layer-count photos, vague underlayment specs, no fastening schedule) extend review by 1–2 weeks. Submit all docs upfront: deck photos, product spec sheets, and fastening schedule.

What happens if I repair less than 25% of my roof — do I still need a permit?

If the repair is like-for-like (same material, same existing layer count ≤ 2), and affects fewer than roughly 10 roofing squares (1,000 sq ft), you may qualify for administrative exemption. However, Keizer does NOT have an automatic exemption; you must call the permit tech in advance and get verbal pre-approval. If you have three existing layers, even a small repair requires a full tear-off and permit. Do not assume; call first.

What documents do I need to upload when I submit a roof-replacement permit application in Keizer?

Upload: (1) color photos of the existing roof showing layer count and deck condition, (2) product data sheets for underlayment (brand, ASTM grade), (3) fastening schedule with nail/screw type, size, and spacing, (4) roofing contractor's license and liability insurance (if contractor is pulling), and (5) structural engineer's report (if material change to tile/slate). Missing any one of these will trigger a request for information and delay your permit by several days.

How many inspections are required for a Keizer roof-replacement permit?

Two: (1) Deck inspection (after tear-off, before underlayment), verifying old layers are removed, deck is sound, and fastening holes are sealed, and (2) Final inspection (after shingles/panels installed), checking fastener spacing, ice-water-shield placement, flashing, and ridge vents. The inspector will call your contractor to schedule. Residential permits are typically inspected within 2–3 business days of the call.

Will an unpermitted roof replacement hurt me if I sell my home in Keizer?

Yes. Oregon law requires disclosure of 'recent major unpermitted work' on the property. An unpermitted roof replacement will appear in county records and must be disclosed to buyers. Many lenders will not finance a home with undisclosed unpermitted roofing, or will demand it be legalized (back-permit and re-inspection) before closing. You will lose 5–10% of sale price, face financing rejection, or be forced to hire a contractor to re-roof the entire house legally. Permit upfront and save yourself the headache.

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 Keizer Building Department before starting your project.