Waterfowl Production Areas · Iowa state guide
Iowa Waterfowl Production Areas
Iowa has 86 named WPAs totaling 26,674 acres across 17 counties. Each tract below links to a satellite map, GPS coordinates, directions and shooting-hour tables.
Map of Iowa WPAs
About Iowa's Waterfowl Production Areas
Waterfowl Production Areas are federally owned wetlands and grasslands bought mostly with Federal Duck Stamp revenue and managed by U.S. Fish and Wildlife Service wetland management districts. Unlike most National Wildlife Refuges, WPAs are generally open to hunting, fishing and trapping under Iowa state regulations, with a few federal rules on top — walk-in access only, no camping and, in many districts, nontoxic shot for all shotgun hunting. Land next to a WPA is almost always private, and conservation easements are private land too.
In Iowa, WPAs are managed by 1 office: Iowa Wetland Management District (86 WPAs).
Largest WPAs in Iowa
| WPA | County | Acres | Nearest town |
|---|---|---|---|
| Union Hills WPA | Cerro Gordo County | 2,132 | 15 mi SW of Mason City |
| Lower Morse Lake WPA | Wright County | 1,804 | 33 mi SW of Mason City |
| Spring Run WPA | Dickinson County | 1,233 | 16 mi N of Spencer |
| Welsh Lake WPA | Dickinson County | 962 | 22 mi N of Spencer |
| Harlontown Slough WPA | Worth County | 939 | 15 mi NW of Mason City |
| Dunbar Slough WPA | Greene County | 887 | 51 mi W of Ames |
| Dugout Creek WPA | Dickinson County | 788 | 20 mi NW of Spencer |
| Ingham Lake WPA | Emmet County | 775 | 27 mi NE of Spencer |
| Kiowa Marsh WPA | Sac County | 756 | 46 mi S of Spencer |
| Swan Lake WPA | Dickinson County | 742 | 23 mi NE of Spencer |
New to WPAs? Read Waterfowl Production Areas explained, upland hunting on WPAs and public-land duck hunting tactics.
All Iowa WPAs by county
Boone County 1 WPAs · 410 acres
- Harrier WPA 410 ac
Buena Vista County 1 WPAs · 69 acres
- Pickerel Lake WPA 69 ac
Cerro Gordo County 5 WPAs · 2,719 acres
- Bailey Creek WPA 159 ac
- Beaver Dam WPA 152 ac
- Sandpiper WPA 124 ac
- Teal Basins WPA 151 ac
- Union Hills WPA 2,132 ac
Clay County 5 WPAs · 863 acres
- Barringer Slough WPA 273 ac
- Dan Greene WPA 204 ac
- Dewey's Pasture WPA 264 ac
- Ducks Unlimited Marsh WPA 53 ac
- Iowa Natural Heritage Foundation WPA 69 ac
Dickinson County 15 WPAs · 6,788 acres
- Cayler Prairie WPA 71 ac
- Cory Marsh WPA 71 ac
- Diamond Lake WPA 561 ac
- Dugout Creek WPA 788 ac
- Garlock Slough WPA 347 ac
- Iowa National Heritage Foundation WPA 81 ac
- Jemmerson Slough WPA 538 ac
- Kettleson Hogsback WPA 143 ac
- McClurg WPA 119 ac
- Santee Prairie WPA 454 ac
- Spring Run WPA 1,233 ac
- Swan Lake WPA 742 ac
- Welsh Lake WPA 962 ac
- West Lake Okoboji WPA 140 ac
- Yager Slough WPA 539 ac
Emmet County 10 WPAs · 2,540 acres
- Burr Oak WPA 183 ac
- Cheever Lake WPA 134 ac
- Eagle Lake WPA 344 ac
- Four Mile WPA 280 ac
- Ingham Lake WPA 775 ac
- Iowa National Heritage Foundation WPA 80 ac
- Tuttle Lake WPA 313 ac
- Twelve Mile WPA 162 ac
- Wellnitz WPA 120 ac
- West Swan Lake WPA 149 ac
Greene County 2 WPAs · 1,122 acres
- Dunbar Slough WPA 887 ac
- Snake Creek WPA 235 ac
Guthrie County 2 WPAs · 302 acres
- Bays Branch WPA 277 ac
- Lakin Slough WPA 26 ac
Hancock County 6 WPAs · 852 acres
- Crystal Lake WPA 43 ac
- Eagle Flats WPA 174 ac
- Eagle Lake WPA 74 ac
- Lake Edwards WPA 92 ac
- Meredith Marsh WPA 143 ac
- Smith WPA 326 ac
Kossuth County 15 WPAs · 3,080 acres
- Bison WPA 236 ac
- Blazing Star WPA 115 ac
- Blue-wing WPA 173 ac
- Bluestem WPA 162 ac
- Bobolink WPA 307 ac
- Copp Prairie WPA 237 ac
- Dickcissel WPA 159 ac
- Goose Lake WPA 161 ac
- Iowa Lake Marsh WPA 138 ac
- Mallard WPA 142 ac
- Maynard Reece WPA 556 ac
- Pintail WPA 154 ac
- Prairie Smoke WPA 312 ac
- State Line Marsh WPA 134 ac
- Wapati WPA 95 ac
Palo Alto County 5 WPAs · 964 acres
- Bluewing Marsh WPA 392 ac
- Dewey's Pasture WPA 254 ac
- Elk Lake WPA 192 ac
- Fallow Marsh WPA 77 ac
- Palo Alto WPA 50 ac
Pocahontas County 2 WPAs · 650 acres
- Plover WPA 159 ac
- Shimon Marsh WPA 491 ac
Polk County 1 WPAs · 147 acres
- Errington Marsh WPA 147 ac
Sac County 3 WPAs · 933 acres
- Blackhawk Marsh WPA 127 ac
- Kiowa Marsh WPA 756 ac
- Tomahawk Marsh WPA 50 ac
Winnebago County 7 WPAs · 1,547 acres
- Good Neighbors Marsh WPA 201 ac
- Hogsback Marsh WPA 240 ac
- Myre Slough WPA 111 ac
- Pilot Knob WPA 196 ac
- Rice Lake WPA 296 ac
- Winnebago County WPA 428 ac
- Wood Duck Marsh WPA 75 ac
Worth County 3 WPAs · 1,628 acres
- Elk Creek WPA 543 ac
- Grass Lake WPA 145 ac
- Harlontown Slough WPA 939 ac
Wright County 3 WPAs · 2,060 acres
- Big Wall Lake WPA 218 ac
- Lower Morse Lake WPA 1,804 ac
- Olaf WPA 38 ac