Iowa
Iowa communities are exploring accessory dwelling units as a tool for addressing housing shortages in both urban and rural areas. Des Moines and Iowa City have updated their zoning codes to make ADUs easier to permit. ADU Pass helps Iowa homeowners manage the application process so they can add housing on their property.
Map
State ADU details
State ADU law
Iowa enacted strong statewide ADU preemption in the 2025 session. Senate File 592 was signed by Governor Kim Reynolds on 2025-05-01 and took effect 2025-07-01. The bill requires every Iowa city and county to allow at least one ADU on every lot containing a single-family residence. ADU size is capped at the larger of 1,000 sqft or 50% of the primary residence size. Cities and counties may not impose ADU-specific requirements that are more restrictive than those for single-family residences in the same zone — including height, setbacks, lot size, lot coverage, density, parking, utility separation, impact fees, rental restrictions, or aesthetic/architectural standards. Permit applications that meet requirements must be approved without a hearing within the same timeframe as a single-family residence. Local actions inconsistent with the law are void. The only carve-outs are state historic building code, deed restrictions, and HOA rules.
State financing programs
Iowa does not operate an ADU-specific statewide loan, grant, or forgivable-loan program. The Iowa Finance Authority (IFA), now operating under the Iowa Economic Development & Finance Authority umbrella, administers general first-time-homebuyer mortgage and down-payment-assistance programs (FirstHome, Homes for Iowans) and a Multifamily Loan Program for rental development; none target ADU construction directly. ADU costs may be financed through standard renovation or construction loan products under these IFA programs when the ADU is part of a qualifying primary-residence purchase or refinance.
- FirstHome Program (Iowa Finance Authority)
- Homes for Iowans Program (Iowa Finance Authority)
- Multifamily Loan Program (Iowa Finance Authority)
State insurance regimes
Iowa operates a FAIR Plan as the insurer of last resort but is not part of a state-run wind pool. The Iowa FAIR Plan Association provides basic Fire, Lightning, Wind, and Hail coverage to property owners who cannot obtain coverage in the voluntary admitted market. Iowa is in the heart of Tornado Alley and faces significant severe-thunderstorm and hail exposure, which has driven double-digit homeowners-rate increases in 2024-2026 and tightened underwriting in some markets, but these are admitted-market dynamics rather than a state insurance regime. ADUs are typically covered as accessory structures under standard homeowner policies (often at ~10% of dwelling coverage) or require a dwelling-fire or landlord endorsement when rented; the FAIR Plan covers eligible properties on a basic-fire-and-extended-coverage basis without ADU-specific provisions. The Iowa Insurance Division regulates property insurance under Iowa Code Chapter 515 and 515F.
State housing programs
Iowa's primary state-level ADU program is the SF 592 (2025) preemption framework: by-right ADUs on every single-family lot statewide, with strict caps on what local regulation can impose. There is no statewide pre-approved ADU plan catalog, no statewide ADU rebate, and no statewide ADU impact-fee waiver as a separate program — but SF 592 itself prohibits ADU-specific impact fees beyond what would apply to a single-family residence, which functions as a statewide impact-fee floor. Streamlined ministerial review is mandated by SF 592.
- SF 592 ADU-by-right framework — Cities and counties must allow at least one ADU on every single-family lot, ministerially, on the same approval timeline as a single-family residence. ADU-specific restrictions on size (above the 1,000 sqft / 50% cap), height, setbacks, lot coverage, density, parking, utilities, impact fees, rental, and aesthetics are barred.
- SF 592 implicit impact-fee cap — Local impact fees specific to ADUs (beyond the single-family fee schedule) are barred. ADUs cannot be charged separately above what the underlying single-family use would bear.
Known state issues (2)
- policy-review (since 2025-07-01) — Practitioners should rely on SF 592 as the operative law even where local code still references the old ADU rules; voided local provisions are unenforceable. (source)
- other (since 2024-01-01) — Owners should factor 5-15% annual premium escalation into ADU pro forma calculations and consider whether the FAIR Plan or surplus-lines coverage is needed for older properties. (source)
Federal (United States) — ADU-relevant rules and programs
Federal ADU law
The United States has no federal statute that directly regulates accessory dwelling unit entitlement or design. Land-use authority over ADUs resides with states and local governments under the traditional police power. Federal engagement is limited to financing (Fannie/Freddie/FHA/VA/USDA), flood insurance (FEMA/NFIP), and discretionary housing programs (HUD), which are recorded in sibling sections of this file.
Federal financing programs
Federal housing-finance agencies and GSEs set nationwide underwriting rules that govern whether an ADU can be financed, appraised, and counted toward mortgage qualifying income. The relevant actors are Fannie Mae, Freddie Mac, FHA (HUD), VA, and USDA Rural Development.
Federal tax credits
There is no ADU-specific federal tax credit. ADUs may incidentally qualify for existing federal energy-efficiency and clean-energy tax credits when the ADU construction includes qualifying measures.
Federal housing programs
HUD administers several discretionary programs that can fund ADU-related activity at the grantee's election, but none is an ADU-specific program.
Counties
- Adair County
- Adams County
- Allamakee County
- Appanoose County
- Audubon County
- Benton County
- Black Hawk County
- Boone County
- Bremer County
- Buchanan County
- Buena Vista County
- Butler County
- Calhoun County
- Carroll County
- Cass County
- Cedar County
- Cerro Gordo County
- Cherokee County
- Chickasaw County
- Clarke County
- Clay County
- Clayton County
- Clinton County
- Crawford County
- Dallas County
- Davis County
- Decatur County
- Delaware County
- Des Moines County
- Dickinson County
- Dubuque County
- Emmet County
- Fayette County
- Floyd County
- Franklin County
- Fremont County
- Greene County
- Grundy County
- Guthrie County
- Hamilton County
- Hancock County
- Hardin County
- Harrison County
- Henry County
- Howard County
- Humboldt County
- Ida County
- Iowa County
- Jackson County
- Jasper County
- Jefferson County
- Johnson County
- Jones County
- Keokuk County
- Kossuth County
- Lee County
- Linn County
- Louisa County
- Lucas County
- Lyon County
- Madison County
- Mahaska County
- Marion County
- Marshall County
- Mills County
- Mitchell County
- Monona County
- Monroe County
- Montgomery County
- Muscatine County
- O'Brien County
- Osceola County
- Page County
- Palo Alto County
- Plymouth County
- Pocahontas County
- Polk County
- Pottawattamie County
- Poweshiek County
- Ringgold County
- Sac County
- Scott County
- Shelby County
- Sioux County
- Story County
- Tama County
- Taylor County
- Union County
- Van Buren County
- Wapello County
- Warren County
- Washington County
- Wayne County
- Webster County
- Whiteside County
- Winnebago County
- Winneshiek County
- Woodbury County
- Worth County
- Wright County
Cities
- Ackley
- Adair
- Adel
- Afton
- Agency
- Ainsworth
- Akron
- Albert City
- Albia
- Albion
- Alburnett
- Alden
- Alexander
- Algona
- Alleman
- Allerton
- Allison
- Alta
- Alta Vista
- Alton
- Altoona
- Alvord
- Amana (Iowa County)
- Amana (Johnson County)
- Ames
- Anamosa
- Andover
- Andrew
- Anita
- Ankeny
- Anthon
- Aplington
- Arcadia
- Archer
- Argyle
- Arispe
- Armstrong
- Arnolds Park
- Arthur
- Atalissa
- Atkins
- Atlantic
- Auburn
- Audubon
- Aurelia
- Aurora
- Avoca (Cass County)
- Avoca (Pottawattamie County)
- Avoca (Shelby County)
- Badger
- Bagley
- Baldwin
- Bancroft
- Barnes City
- Barnum
- Batavia
- Battle Creek
- Baxter
- Bayard
- Beacon
- Beaman
- Beaver
- Bedford
- Belle Plaine (Benton County)
- Belle Plaine (Tama County)
- Bellevue
- Belmond
- Bennett
- Bernard
- Berwick
- Bettendorf
- Birmingham
- Blairsburg
- Blairstown
- Blakesburg
- Blanchard
- Blencoe
- Blockton (Ringgold County)
- Blockton (Taylor County)
- Bloomfield
- Blue Grass (Muscatine County)
- Blue Grass (Scott County)
- Bode
- Bonaparte (Lee County)
- Bonaparte (Van Buren County)
- Bondurant
- Boone (Boone County)
- Boone (No County)
- Booneville
- Bouton
- Boxholm
- Boyden
- Braddyville
- Bradford
- Bradgate
- Brandon
- Brayton
- Breda
- Bridgewater
- Brighton
- Britt
- Bronson
- Brooklyn (Iowa County)
- Brooklyn (Poweshiek County)
- Brunsville
- Buffalo
- Buffalo Center
- Burlington
- Burt
- Bussey
- Calamus
- Callender
- Calmar
- Calumet
- Camanche
- Cambridge
- Cantril
- Carlisle (Marion County)
- Carlisle (Warren County)
- Carnarvon
- Carroll
- Carson (Mills County)
- Carson (Pottawattamie County)
- Cascade
- Casey
- Castalia
- Castana
- Cedar
- Cedar Falls (Black Hawk County)
- Cedar Falls (Bremer County)
- Cedar Falls (Butler County)
- Cedar Rapids (Benton County)
- Cedar Rapids (Johnson County)
- Cedar Rapids (Linn County)
- Cedar Rapids (No County)
- Center Junction
- Center Point
- Centerville (Appanoose County)
- Centerville (Wayne County)
- Central City
- Chariton
- Charles City
- Charlotte
- Charter Oak
- Chelsea
- Cherokee
- Chester
- Chillicothe
- Churdan
- Cincinnati
- Clare
- Clarence
- Clarinda
- Clarion
- Clarksville
- Clear Lake
- Clearfield
- Cleghorn
- Clemons
- Clermont
- Clinton (Carroll County)
- Clinton (Clinton County)
- Clinton (No County)
- Clinton (Whiteside County)
- Clive (Dallas County)
- Clive (Polk County)
- Coggon
- Coin
- Colesburg
- Colfax
- College Springs
- Collins
- Colo
- Columbus Junction
- Conesville
- Conrad
- Conroy
- Coon Rapids
- Coralville
- Corning
- Correctionville
- Corwith
- Corydon
- Coulter
- Council Bluffs (No County)
- Council Bluffs (Pottawattamie County)
- Crawfordsville
- Crescent
- Cresco
- Creston (Adair County)
- Creston (Union County)
- Crystal Lake
- Cumberland
- Cumming
- Curlew
- Cushing
- Cylinder
- Dakota City
- Dallas Center
- Danbury
- Danville
- Davenport (No County)
- Davenport (Scott County)
- Davis City
- Dawson
- Dayton
- De Soto
- De Witt
- Decatur
- Decorah (Allamakee County)
- Decorah (Winneshiek County)
- Dedham
- Deep River
- Defiance
- Delhi
- Delmar
- Deloit
- Denison
- Denmark
- Denver
- Derby
- Des Moines (No County)
- Des Moines (Polk County)
- Dewar
- Dexter
- Diagonal
- Dickens
- Dike
- Dixon
- Dolliver
- Donahue
- Donnellson
- Doon
- Douds
- Dow City
- Dows
- Drakesville (Appanoose County)
- Drakesville (Davis County)
- Dubuque (Dubuque County)
- Dubuque (No County)
- Dumont (Butler County)
- Dumont (Franklin County)
- Duncombe
- Dundee
- Dunkerton
- Dunlap (Harrison County)
- Dunlap (Shelby County)
- Durant
- Dyersville
- Dysart (Benton County)
- Dysart (Tama County)
- Eagle Grove (Webster County)
- Eagle Grove (Wright County)
- Earlham
- Earling
- Early
- Eddyville (Mahaska County)
- Eddyville (Wapello County)
- Edgewood
- Elberon
- Eldon (Van Buren County)
- Eldon (Wapello County)
- Eldora
- Eldridge
- Elgin
- Elk Horn
- Elkader
- Elkhart
- Elliott
- Ellston
- Ellsworth
- Elma
- Ely
- Emerson
- Emmetsburg
- Epworth
- Essex
- Estherville
- Everly
- Exira
- Exline
- Fairbank (Buchanan County)
- Fairbank (Fayette County)
- Fairfax
- Fairfield
- Farley
- Farmersburg
- Farmington
- Farnhamville
- Farragut
- Fayette
- Fenton
- Ferguson
- Fertile
- Floris
- Floyd
- Fonda
- Fontanelle
- Forest City
- Fort Atkinson
- Fort Dodge
- Fort Madison
- Fostoria
- Fredericksburg
- Frederika
- Fremont
- Fruitland
- Galva
- Garden City
- Garden Grove
- Garnavillo
- Garner
- Garrison
- George
- Gibson
- Gilbert
- Gilbertville
- Gillett Grove
- Gilman
- Gilmore City
- Gladbrook
- Glenwood
- Glidden
- Goldfield
- Goose Lake
- Gowrie
- Graettinger
- Grafton
- Grand Junction
- Grand Mound
- Grand River
- Granger
- Grant
- Granville
- Gray
- Greeley
- Greene
- Greenfield
- Grimes
- Grinnell
- Griswold (Cass County)
- Griswold (Montgomery County)
- Grundy Center
- Guthrie Center
- Guttenberg
- Halbur
- Hamburg
- Hamilton
- Hampton
- Hancock
- Hanlontown
- Harcourt
- Harlan (Audubon County)
- Harlan (No County)
- Harlan (Shelby County)
- Harpers Ferry
- Harris
- Hartford
- Hartley
- Harvey
- Hastings
- Havelock
- Haverhill
- Hawarden
- Hawkeye
- Hazleton
- Hedrick
- Hiawatha
- Highlandville
- Hills
- Hinton
- Holland
- Holstein
- Holy Cross (Clayton County)
- Holy Cross (Dubuque County)
- Hopkinton
- Hornick
- Hospers
- Houghton
- Hubbard
- Hudson
- Hull
- Humboldt
- Humeston
- Huxley (Polk County)
- Huxley (Story County)
- Ida Grove
- Independence
- Indianola
- Inwood
- Iowa City (Cedar County)
- Iowa City (Johnson County)
- Iowa City (No County)
- Iowa Falls (Franklin County)
- Iowa Falls (Hardin County)
- Ireton
- Irwin
- Jamaica
- Janesville
- Jefferson (Carroll County)
- Jefferson (Greene County)
- Jefferson (No County)
- Jesup
- Jewell
- Johnston
- Joice
- Jolley
- Kalona
- Kamrar
- Kanawha
- Kellerton
- Kellogg
- Kensett
- Keokuk
- Keosauqua
- Keota (Keokuk County)
- Keota (Washington County)
- Keswick
- Keystone
- Killduff
- Kimballton
- Kingsley (Plymouth County)
- Kingsley (Woodbury County)
- Kirkville
- Kiron
- Klemme
- Knoxville
- La Motte
- La Porte City
- Lacona
- Ladora
- Lake City
- Lake Mills
- Lake Park
- Lake View
- Lakota
- Lamoni
- Lamont (Buchanan County)
- Lamont (Fayette County)
- Lanesboro
- Lansing
- Larchwood
- Larrabee
- Latimer
- Laurel
- Laurens
- Lawler
- Lawton
- Le Claire
- Le Grand
- Le Mars
- Ledyard
- Lehigh
- Leighton
- Leland
- Lenox
- Leon (Decatur County)
- Leon (Ringgold County)
- Lester
- Letts
- Lewis
- Liberty Center
- Libertyville
- Lidderdale
- Lime Springs
- Lincoln
- Linden
- Lineville
- Linn Grove
- Lisbon
- Liscomb
- Little Rock
- Livermore (Humboldt County)
- Livermore (Kossuth County)
- Lockridge
- Logan
- Lohrville
- Lone Rock
- Lone Tree
- Long Grove
- Lorimor
- Lost Nation
- Lovilia (Marion County)
- Lovilia (Monroe County)
- Low Moor
- Lowden
- Luana
- Lucas
- Luxemburg
- Lynnville (Jasper County)
- Lynnville (Poweshiek County)
- Lytton
- Macedonia
- Macksburg
- Madrid
- Malcom
- Malvern (Fremont County)
- Malvern (Mills County)
- Manchester
- Manilla
- Manly
- Manning
- Manson
- Mapleton (Monona County)
- Mapleton (Woodbury County)
- Maquoketa
- Marathon
- Marble Rock
- Marcus
- Marengo
- Marion
- Marne
- Marquette
- Marshalltown (Marshall County)
- Marshalltown (Tama County)
- Martelle
- Martensdale (Madison County)
- Martensdale (Warren County)
- Martinsburg
- Mason City (Cerro Gordo County)
- Mason City (No County)
- Masonville
- Massena
- Maurice
- Maxwell
- Maynard
- McCallsburg
- McCausland
- McGregor
- Mechanicsville
- Mediapolis (Des Moines County)
- Mediapolis (Louisa County)
- Melbourne
- Melcher Dallas
- Melrose
- Melvin
- Menlo
- Meriden
- Merrill
- Meservey
- Middle Amana
- Middletown
- Miles
- Milford
- Millersburg
- Milo
- Milton
- Minburn
- Minden
- Mineola
- Mingo
- Missouri Valley (Harrison County)
- Missouri Valley (Pottawattamie County)
- Mitchellville
- Modale
- Mondamin
- Monmouth
- Monona
- Monroe
- Montezuma (Mahaska County)
- Montezuma (Poweshiek County)
- Monticello
- Montour
- Montrose
- Moorhead
- Moorland
- Moravia
- Morning Sun
- Moscow
- Mount Auburn
- Mount Ayr
- Mount Pleasant (Des Moines County)
- Mount Pleasant (Henry County)
- Mount Union (Des Moines County)
- Mount Union (Henry County)
- Mount Vernon (Jones County)
- Mount Vernon (Linn County)
- Moville
- Murray
- Muscatine
- Mystic
- Nashua
- Nemaha
- Neola
- Nevada
- New Albin
- New Hampton
- New Hartford
- New Liberty
- New London
- New Market
- New Providence
- New Sharon
- New Vienna
- New Virginia
- Newell
- Newhall
- Newton
- Nichols
- Nora Springs
- North English
- North Liberty
- Northwood
- Norwalk
- Norway
- Oakland
- Oakville
- Ocheyedan
- Odebolt
- Oelwein
- Ogden
- Okoboji
- Olds
- Olin
- Ollie
- Onawa
- Onslow
- Orange City
- Orchard
- Orient
- Osage
- Osceola
- Oskaloosa
- Ossian
- Otley
- Ottosen
- Ottumwa
- Oxford
- Oxford Junction
- Oyens
- Packwood (Jefferson County)
- Packwood (Keokuk County)
- Palmer
- Palo
- Panama
- Panora (Dallas County)
- Panora (Guthrie County)
- Parkersburg
- Parnell
- Paton
- Paullina
- Pella (Mahaska County)
- Pella (Marion County)
- Peosta
- Perry (Dallas County)
- Perry (Guthrie County)
- Persia
- Peterson
- Pierson
- Pilot Mound
- Pisgah
- Plainfield
- Plano
- Pleasant Valley
- Pleasantville
- Plover
- Plymouth
- Pocahontas
- Polk City
- Pomeroy
- Portsmouth
- Postville
- Prairie City
- Prescott
- Preston
- Primghar
- Princeton
- Prole
- Promise City
- Protivin
- Pulaski
- Quasqueton
- Quimby
- Radcliffe
- Rake
- Randall
- Randolph
- Raymond
- Readlyn
- Reasnor
- Red Oak
- Redding
- Redfield
- Reinbeck
- Rembrandt
- Remsen
- Renwick
- Rhodes
- Riceville (Howard County)
- Riceville (Mitchell County)
- Richland
- Ricketts
- Ridgeway
- Ringsted
- Rippey
- Riverside
- Riverton
- Rock Rapids
- Rock Valley
- Rockford
- Rockwell
- Rockwell City
- Roland
- Rolfe (Humboldt County)
- Rolfe (Pocahontas County)
- Rose Hill
- Rowan
- Rowley
- Royal
- Rudd
- Runnells
- Russell
- Ruthven
- Rutland
- Ryan
- Sabula
- Sac City
- Saint Ansgar (Mitchell County)
- Saint Ansgar (No County)
- Saint Anthony
- Saint Charles
- Saint Lucas
- Saint Marys
- Saint Olaf
- Salem (Henry County)
- Salem (No County)
- Salix
- Sanborn
- Scarville
- Schaller
- Schleswig
- Sergeant Bluff
- Seymour
- Shambaugh
- Shannon City
- Sharpsburg
- Sheffield
- Shelby
- Sheldahl
- Sheldon
- Shell Rock
- Shellsburg
- Shenandoah (Fremont County)
- Shenandoah (Page County)
- Sherrill
- Sibley
- Sidney
- Sigourney
- Silver City
- Sioux Center
- Sioux City (No County)
- Sioux City (Plymouth County)
- Sioux City (Woodbury County)
- Sioux Rapids
- Slater
- Sloan
- Soldier
- Solon
- Somers (Calhoun County)
- Somers (Webster County)
- South Amana
- South English
- Spencer
- Spillville
- Spirit Lake
- Springbrook
- Springville
- Stacyville
- Stanhope
- Stanton
- Stanwood
- State Center
- Steamboat Rock
- Stockport
- Stockton
- Storm Lake
- Story City
- Stout
- Stratford
- Strawberry Point
- Stuart
- Sully
- Sumner (Bremer County)
- Sumner (Fayette County)
- Superior
- Sutherland
- Swaledale
- Swea City
- Swedesburg
- Swisher
- Tabor
- Tama
- Templeton
- Terril
- Thompson
- Thor
- Thornburg
- Thornton
- Thurman
- Tiffin
- Tingley
- Tipton
- Titonka
- Toledo
- Traer
- Treynor
- Tripoli
- Troy Mills
- Truesdale
- Truro
- Underwood
- Union (Hardin County)
- Union (No County)
- Unionville
- University Park
- Urbana
- Urbandale (Dallas County)
- Urbandale (Polk County)
- Ute
- Vail
- Van Horne
- Van Meter (Dallas County)
- Van Meter (Madison County)
- Van Wert
- Varina
- Ventura
- Victor
- Villisca (Adams County)
- Villisca (Montgomery County)
- Vincent
- Vining
- Vinton
- Volga
- Wadena
- Walcott
- Walford
- Walker (Buchanan County)
- Walker (Linn County)
- Wall Lake
- Wallingford
- Walnut
- Wapello (Des Moines County)
- Wapello (Louisa County)
- Washington
- Washta (Cherokee County)
- Washta (Ida County)
- Waterloo (Black Hawk County)
- Waterloo (No County)
- Watkins
- Waucoma
- Waukee
- Waukon
- Waverly (Bremer County)
- Waverly (Butler County)
- Wayland
- Webb
- Webster City
- Weldon (Clarke County)
- Weldon (Decatur County)
- Wellman
- Wellsburg
- Wesley
- West Bend
- West Branch
- West Burlington
- West des Moines
- West Liberty
- West Point
- West Union
- Westfield
- Westphalia
- Westside
- Wever
- What Cheer
- Wheatland
- Whiting
- Whittemore (Kossuth County)
- Whittemore (Palo Alto County)
- Whitten
- Williams
- Williamsburg
- Williamson
- Wilton
- Winfield
- Winterset
- Winthrop
- Wiota
- Woden
- Woodbine
- Woodburn
- Woodward (Boone County)
- Woodward (Dallas County)
- Woolstock
- Worthington
- Wyoming
- Yale
- Yorktown
- Zearing
- Zwingle