Municipality-by-Municipality Requirements
Updated April 2026
An occupancy inspection (also called an occupancy permit or certificate of occupancy) is required by many St. Louis area municipalities when a property changes hands. The inspection ensures the home meets local building and safety codes before new owners move in. Requirements vary by municipality - some require inspections for all sales, others only for rentals or commercial properties, and some do not require them at all. Use the searchable table below to find your municipality and check what is required.
| Municipality ▼ | Residential ▼ | Rental ▼ | Commercial ▼ | Conditional ▼ | Info ▼ |
|---|---|---|---|---|---|
| Alton, IL | Yes | Yes | Yes | - | - |
| Arnold | Yes | Yes | Yes | Yes | Details |
| Ballwin | Yes | Yes | - | - | Details |
| Bel Nor | Yes | Yes | - | - | - |
| Bel Ridge | Yes | Yes | - | Yes | - |
| Bella Villa | Yes | Yes | Yes | No | - |
| Bellefontaine Neighbors | Yes | Yes | - | - | - |
| Belleville, IL | Yes | Yes | Yes | - | Details |
| Bellerive Acres | Yes | Yes | Yes | - | - |
| Berkeley | Yes | Yes | Yes | - | - |
| Beverly Hills | Yes | Yes | - | - | - |
| Black Jack | Yes | Yes | - | Yes | Details |
| Breckenridge Hills | Yes | Yes | Yes | Yes | - |
| Brentwood | Yes | Yes | - | - | Details |
| Bridgeton | Yes | Yes | Yes | - | Details |
| Byrnes Mill | Yes | Yes | Yes | - | Details |
| Calverton Park | Yes | - | - | - | - |
| Champ | No | No | Yes | No | - |
| Charlack | Yes | - | - | - | - |
| Chesterfield | No | - | Yes | - | Details |
| Clarkson Valley | No | - | - | - | - |
| Clayton | Yes | Yes | Yes | - | Details |
| Cool Valley | Yes | Yes | Yes | Yes | - |
| Cottleville | Yes | - | - | - | - |
| Country Club Hills | Yes | Yes | Yes | - | - |
| Country Life Acres | No | - | - | - | - |
| Crestwood | No | Yes | Yes | - | Details |
| Creve Coeur | No | - | Yes | No | - |
| Crystal City | Yes | Yes | Yes | - | Details |
| Crystal Lake Park | Yes | Yes | - | No | - |
| Dardenne Prairie | No | - | - | - | - |
| De Soto | Yes | Yes | Yes | - | - |
| Dellwood | Yes | - | Yes | No | Details |
| Des Peres | No | - | Yes | - | Details |
| Edwardsville, IL | Yes | Yes | Yes | - | - |
| Edmundson | Yes | Yes | Yes | No | - |
| Ellisville | Yes | Yes | Yes | No | Details |
| Eureka | - | - | - | - | - |
| Fairview Heights, IL | Yes | Yes | Yes | - | - |
| Fenton | No | - | - | - | - |
| Ferguson | Yes | Yes | Yes | No | Details |
| Festus | Yes | Yes | - | - | Details |
| Flordell Hills | Yes | Yes | Yes | - | - |
| Florissant | Yes | Yes | Yes | - | Details |
| Franklin County | No | No | - | - | - |
| Frontenac | No | No | - | - | - |
| Glen Echo Park (now Normandy) | - | - | - | - | - |
| Glendale | Yes | Yes | Yes | - | Details |
| Granite City, IL | Yes | Yes | Yes | - | - |
| Grantwood Village | Yes | Yes | - | - | - |
| Green Park | Yes | Yes | Yes | - | Details |
| Greendale | Yes | Yes | Yes | No | - |
| Hanley Hills | Yes | Yes | - | - | - |
| Hazelwood | Yes | Yes | Yes | - | Details |
| Herculaneum | Yes | - | Yes | - | - |
| Hillsdale | Yes | Yes | - | - | - |
| Huntleigh | No | No | - | - | - |
| Jefferson County | No | No | - | - | - |
| Jennings | Yes | No | Yes | No | Details |
| Kinloch | Yes | Yes | - | - | - |
| Kirkwood | Yes | Yes | Yes | - | Details |
| Ladue | - | - | - | - | - |
| Lake Saint Louis | No | Yes | Yes | - | - |
| Lakeshire | Yes | No | Yes | - | - |
| Manchester | Yes | Yes | Yes | - | Details |
| Maplewood | Yes | Yes | Yes | - | Details |
| Marlborough | Yes | Yes | Yes | - | Details |
| Maryland Heights | Yes | Yes | Yes | No | Details |
| Moline Acres | Yes | Yes | Yes | - | - |
| Normandy | Yes | Yes | Yes | No | Details |
| Northwoods | Yes | - | - | - | - |
| O'Fallon, IL | Yes | Yes | Yes | - | - |
| O'Fallon, MO | No | Yes | - | - | - |
| Oakland | No | No | - | - | - |
| Olivette | Yes | Yes | Yes | - | Details |
| Overland | Yes | Yes | Yes | No | Details |
| Pacific | Yes | Yes | Yes | Yes | Details |
| Pagedale | Yes | No | Yes | No | Details |
| Pasadena Hills | - | - | - | - | - |
| Pevely | Yes | Yes | Yes | - | Details |
| Pine Lawn | Yes | Yes | Yes | - | - |
| Richmond Heights | Yes | Yes | Yes | Yes | Details |
| Riverview | Yes | Yes | Yes | - | - |
| Rock Hill | Yes | Yes | Yes | - | Details |
| Shrewsbury | Yes | Yes | Yes | Yes | Details |
| St. Ann | Yes | Yes | Yes | No | Details |
| St. Charles City | No | Yes | Yes | - | Details |
| St. Charles County | - | No | - | - | - |
| St. John | Yes | Yes | Yes | No | Details |
| St. Louis City | Yes | Yes | Yes | Yes | Details |
| St. Louis County (Unincorp.) | Yes | Yes | Yes | - | Details |
| St. Peters | No | Yes | Yes | - | Details |
| Sunset Hills | Yes | Yes | Yes | Yes | Details |
| Sycamore Hills | Yes | Yes | - | - | - |
| Town and Country | No | No | Yes | - | - |
| Twin Oaks | Yes | - | Yes | - | - |
| University City | Yes | Yes | Yes | Yes | Details |
| Uplands Park | Yes | Yes | - | - | - |
| Valley Park | Yes | Yes | Yes | - | Details |
| Velda City | Yes | Yes | Yes | - | - |
| Velda Village Hills | Yes | Yes | - | - | - |
| Vinita Park | Yes | Yes | Yes | - | - |
| Warrenton | Yes | Yes | Yes | - | - |
| Warson Woods | Yes | Yes | - | - | - |
| Washington | Yes | Yes | Yes | - | - |
| Webster Groves | Yes | - | Yes | Yes | Details |
| Weldon Spring | No | - | - | - | - |
| Wellston | Yes | - | - | - | - |
| Westwood | Yes | Yes | Yes | - | - |
| Wildwood | No | No | Yes | - | - |
| Winchester | Yes | Yes | No | No | - |
| Woodson Terrace | Yes | Yes | Yes | No | Details |
Buying or selling a home in the St. Louis area? Knowing your municipality's occupancy inspection requirements ahead of time can save you delays and surprises at closing. We can help you navigate the process.
Search Homes for Sale Get Your Home Value