// ~/playground/shooting-hours

Shooting Hours

When the light goes legal

Wisconsin shooting hours for where you're standing, straight from the DNR's own table. Tap use my location in the blind and watch the countdown. It keeps working with no signal.

$ ./shooting-hours --wi # an estimate; the DNR table governs

—

—

Opens
—
Closes
—

Coordinates and area
Paste a pin as "44.5, -89.5". West longitudes can be typed without the minus. Near a county line or out on big water, set the table yourself.

THE MAP

THE DAY

This week

DayOpensClosesHours

Sun and moon here

An estimate, not the law. The Wisconsin DNR's regulations and its published shooting hours tables govern. This page reproduces the 2026 tables to within a minute (see below), but check the DNR's shooting hours page and the season rules before you shoot, and allow yourself the margin.

The rule

  • Ducks, geese, coot and other migratory birds: 30 minutes before sunrise to sunset.
  • Early teal season (teal-only, Sept. 1-9 in 2026): sunrise to sunset.
  • Deer, bear, small game, fall turkey: 30 minutes before sunrise to 20 minutes after sunset. Spring turkey uses the waterfowl times.
  • Opening day: the 2026 regulations set no late start for the duck opener. Shooting starts at the normal time. (Wisconsin used a 9 a.m. opener in some past years; the pheasant opener is still 9 a.m.)
  • Exceptions on specific properties: waterfowl shooting closes at 1 p.m. on the George W. Mead Wildlife Area for 16 days starting the third day of the duck season, and migratory bird shooting closes at 1 p.m. on the Zeloski Unit of Lake Mills Wildlife Area from Sept. 1 until 16 days after the opening weekend (normal hours on the opening weekend itself). This page doesn't apply those.

How the DNR turns that into a table

It doesn't compute sunrise for your spot. Wisconsin Administrative Code NR 10.06 splits the state in two and in six:

  • Two areas. The northern area is Pierce, Dunn, Eau Claire, Clark, Marathon, Shawano, Oconto and Door counties and everything north of them. The southern area is the rest. Each area's Zone A table is sunrise and sunset for one reference town, from U.S. Naval Observatory data: Powers, Michigan for the north and Sheboygan for the south.
  • Six zones by longitude. Zone A is east of 88° W and reads the table as printed. Every degree west adds 4 minutes, open and close alike: B (88°-89°) +4, C +8, D +12, E +16, F (west of 92°) +20.

So two blinds a mile apart on either side of 89° W are four minutes apart, and the legal time can sit a few minutes off the sun at your exact spot. This page shows both: the legal times up top, the true sun under "Sun and moon here". Your county comes from simplified Census outlines and your zone from your longitude. Near a line, check the DNR's zone map.

Daylight saving. The code says the hours are in Central Standard Time, but the DNR prints its tables in clock time, and so does this page. In 2026 the clocks fall back on Sunday, Nov. 1, in the middle of duck season. That morning legal light comes an hour earlier on the clock than the day before.

The map

The map is drawn on the page from the same simplified county outlines the lookup uses, so it works offline too. It is not survey-grade. Hours zones shades the six longitude bands and draws the line between the northern and southern tables. Duck zones shows the season zones, which are a different split. Both lays them on one map: the duck zones shaded, the A-F bands as dashed lines, and both north/south lines, so you can see where they disagree (Door County, for one). Tap anywhere to read that spot's zones, and use it as your location if you like.

  • Northern and southern duck zones (Canada goose too) are split by U.S. Highway 10 from the Minnesota line east to U.S. 41 near Appleton, then by U.S. 41 north to Marinette. East of 41 is the southern zone. That includes Door County, Green Bay's east side, and towns like Oconto that sit east of the 41 bypass. The line here follows the Census Bureau's road centerlines. If you're hunting within a mile or so of either highway, check which side you're on.
  • Open Water zone: Lake Michigan and all of Green Bay, more than 500 feet from the mainland shore. Rooted vegetation, floating cattail mats and Long Tail and Little Tail points count as shore. Islands like Washington and Chambers are in it. Inside 500 feet is the southern zone. At this scale the map just shades the lake.
  • The shooting-hours table line is another split again: Door County uses the northern table but hunts the southern duck zone.
  • The Mississippi River goose zone isn't drawn.

How close it gets

The sun position uses NOAA's solar equations, with sunrise and sunset defined the usual way: the top edge of the sun on a flat horizon, with standard refraction (the sun's centre 0.833° below the horizon). Times are rounded to the minute before the 30 or 20 minutes are applied, as the table does.

For 2026 the page reads the DNR's own published tables, carried inside the page so they work offline: the times you see are the DNR's numbers plus your zone minutes. For any other year it falls back to computing them the DNR way. That computation was checked against every entry of the four 2026 tables (northern and southern, waterfowl and deer, 2,920 times) and the early teal table: every value within 1 minute, and 91-96% identical. The rest are rounding coin flips. When the true time falls within a few seconds of the half-minute, USNO's ephemeris and NOAA's equations can round to different sides. Location tests across the state (Superior, Hudson, La Crosse, Beloit, Kewaunee, Sturgeon Bay and 16 more, both sides of the Nov. 1 clock change) match the table plus zone minutes. The check is in the repo as scripts/check-shooting-hours.mjs.

2026 seasons, for reference

Ducks: Northern zone Sept. 26-Nov. 24. Southern zone Oct. 3-11 and Oct. 17-Dec. 6. Open Water zone Oct. 17-Dec. 15. Youth hunt Sept. 19-20. Early teal Sept. 1-9. The northern and southern duck zones are split by U.S. Highways 10 and 41. That's a different line from the shooting-hours areas above. Full dates and bag limits are on the DNR waterfowl page.

Sources

$ cd .. → more interactives