Every time you open this, it pulls live readings from nine separate government data feeds, weighs them against what actually moves crabs and rockfish in the upper bay, and gives you one word and one time window. Here is what it is thinking about.
Everything here comes from NOAA, the US Geological Survey and the National Weather Service. Nothing is scraped, guessed or crowdsourced, and there is no paid data behind it.
Blue crabs are a saltwater animal working as far up a brackish estuary as the salt will let them, and the Susquehanna Flats sit right at that edge. When the river runs low, salt pushes north and the crabs come with it. When it runs hard, fresh water shoves that line south: the Flats go quiet while the Elk and the Sassafras stay good. That one relationship explains most of what changes week to week, and it is why this app cares more about the river than any weather app ever will.
The Susquehanna drains about 27,000 square miles, all the way up into New York. When it rains across that basin the water is already on the ground and moving. It just has not arrived yet.
So the freshet that ruins your Saturday probably fell Wednesday, two hundred miles away, and you never saw a drop of it. That lag is exactly what makes the river predictable when the weather is not, and it is why the days ahead in this app use a real river forecast instead of just holding today's number flat.
Two wrinkles. Dry ground soaks up a lot, so an inch in August after a dry spell does far less than an inch in March on saturated ground. And Conowingo is a peaking dam, so hour to hour discharge is a generation decision, not a rain decision. Only daily averages track the actual river, which is how the trend here is calculated.
Weather, tide and wind only matter if the crabs have arrived. Each region has its own arrival clock, set from people who actually crab it rather than worked out from a formula. The Northeast, the flats and the Sassafras all run late together and are not worth much before mid August whatever the conditions look like. The western shore and the main stem fire weeks earlier. A high salinity spring does not make the Sassafras early, because it runs on the calendar, not on the salt.
How many are around at all comes down to where they mudded in for the winter. There is no live feed for that, but Maryland DNR publishes a Winter Dredge Survey every spring, and the app carries a single yearly number set from it. A poor overwintering year fills every region later and never quite as full.
The calendar is not fixed, either. A wet year runs late: heavy freshwater pushes crabs south looking for salinity, and they arrive at the head of the bay weeks behind a dry year. So the season curve shifts with the actual river rather than the date, and it shifts most for the northern regions. The same week can be 72 percent full in a dry year and under 50 in a wet one.
So season and salinity do not add points, they multiply the day down. A day can score in the nineties on conditions and still come out Fair because it is too early or the water has gone too fresh. The hero shows all three numbers: the raw conditions score, how full the season is for that region, and how the salt is holding. If the rating looks low on a beautiful day, that line tells you which of the two is holding it back.
One note on salt: the males you can legally keep actually prefer the brackish upper estuary and handle fresh water well. It only starts to bite below about 5 parts per thousand and it bites hard under 2, which is why a hard freshet matters so much more than a normal summer.
For crabs the river is about salt. For rockfish it is about mud. Rockfish are anadromous and do not care how fresh the water gets, but they hunt by sight and lateral line, and a spillgate release off the dam puts muddy water and debris across the flats. The standing local advice is that this ruins the fishing for a couple of days, that the Susquehanna side of the flats fouls first while the Northeast side stays cleaner, and that the play is to work east and find the edge of the clean water. On a windy day, the upwind side is less churned.
Because of that, the two species run on different clocks. Mud settles out in a day or two, so a falling river clears quickly for rockfish. Salt has to work its way back north from the lower bay, which takes far longer, so crabs stay penalized well after the gauge drops. Same river, same reading, two different answers.
Moderate flow is actually good for rockfish, since water moving through the dam pulls bait and stacks fish below it. It is only when the gates really open that it turns against you.
For crabs, flushing is fast and re-salting is slow. One day of high water does not clear the flats, because it is a volume problem rather than a rate problem. Three days running does. Then when the river finally drops, salinity does not snap back with it: the salt has to work its way north from below the bay, and that takes days.
So the flow number feeding the score is not today's reading. It is a weighted memory of the last six days, and it is deliberately lopsided. It reacts quickly when the river comes up and slowly when it falls, because that is what the water actually does. The same 60,000 cfs reading scores very differently on day one of a rise than on day three.
The practical version: after a real high water event, do not expect the flats to be right again the day the gauge drops. Give it two or three days. The app carries that lag for you and tells you where in the cycle you are, and it holds the lag longest for the northern regions, which sit farthest from the salt and are last to recover.
A freshet that ruins the Flats barely registers at the Bay Bridge, so river discharge counts for a great deal at the head of the bay and very little at the bottom, sliding down region by region. That is why on a high water day you will see the Flats called Good and Tolchester called Excellent on the same morning. It is telling you to go south.
Crabs shut down and drop to deeper water below about 60 degrees. From roughly 70 to 82 they are active and pushing north. Above the mid 80s the shallows lose oxygen and they slide to channel edges. Rockfish are the opposite animal: they want cool water, and above 75 a released fish often dies, which is the entire reason Maryland closes August.
Wind speed is only half of it. A south wind has the entire length of the bay to build over before it reaches the flats, so it stacks a chop into shallow water that a north wind of the same speed never would. Every region has its own bad quarter depending on which way it sits open, and a wind out of that direction marks the day down once it gets above about seven miles an hour.
It also tracks floating grass, and deliberately keeps that out of the rating. Two or three days of hard wind out of the wrong quarter tears the beds loose, and the mats foul your lines long after the wind has laid down. That does not mean the crabs left or stopped biting. It means you will spend the morning picking weed off everything. So it shows up as its own warning next to the boating conditions rather than as a mark against the bite.
Dead slack is the worst water for both. With no current there is no scent plume, and nothing finds your bait. But maximum current is not the target either, at least not for crabs. Rip it and the plume gets swept away, the line drags, floats pull under and crabs let go on the way up.
So crabs get the shoulder: an hour before the tide change through two hours after, while the water is just getting up. That matches what nearly every Chesapeake crabber will tell you, and it is earlier in the cycle than most tide apps would point you.
Rockfish get the middle of the swing instead, when the most water is moving, because they are ambush feeders that use current to their advantage rather than a scent fishery. They also get weighted hard toward first and last light, so the app will rank an after dark window above a bright midday one for them and never for crabs.
Either way, each of the day's windows is ranked by how much water that particular swing moves, and the shaded band on the tide curve is the best one.
For crabbing, wind is misery and muddy water, so calm scores best. For rockfish, slick calm is a problem: chop breaks up the light and turns the bite on, so a moderate breeze scores highest and dead calm gets marked down. Same reading, opposite meaning.
The rating answers whether they will bite. It does not answer whether you should be out there, so that runs as its own read and never touches the score. A day can be Excellent for fish and still be a bad day to put a small boat on the flats.
That call is made on gusts, not average wind, because gusts are what throw a boat around. Gust figures come only from the National Weather Service, the same forecast the major weather apps are built on, so what you see here should match what you are already checking. If no official gust forecast is available, the app judges on sustained wind and tells you that is what it is doing, rather than substituting an estimate. Cards show gusts as G followed by the number, and an orange ring means the water will be a problem regardless of what the fish are doing.
The thresholds are set for the upper bay, not the ocean. This is protected water with short fetch, so a breeze that would be nothing offshore still builds a short steep chop across the flats. Even so, the app tries not to cry wolf: a false rough call teaches you to ignore it on the day it is right.
Wind figures are what the forecast has during that day's best window, not the highest reading of the calendar day. A weather app showing the current hour, or another showing the daily peak, will differ from this on purpose. When the rest of the day turns worse than your window, the on-water line says so. A small tag reads NWS when the numbers come from the National Weather Service grid, which is what the major weather apps are built on, and MODEL when it has fallen back to a global model that runs coarse over the bay.
It happens in two stages. First the conditions: each factor is scored against its own curve and weighted by how much it actually matters for that species in that region, then totalled as a percentage of the points available. If a feed is down, that factor drops out of both sides of the fraction rather than counting as a zero, which is how the app still gives you a usable read on partial data and tells you plainly that it is doing it.
Then the gates. Season and salinity multiply that conditions figure down, so a day can score in the nineties on weather and tide and still land at Fair. The hero line shows all three numbers, so a low rating on a beautiful day is never a mystery: you can see whether the season or the salt is the thing holding it back.
Ratings land in five bands: Bad, OK, Good, Great, Excellent.
It knows the Maryland calendar and will not tell you to go when you cannot. Rockfish are closed all of August, and the Upper Bay spawning area including the Flats is closed March through May. Crabbing runs April 1 to December 15 and is closed every Wednesday, which is the one that catches people out. Size limits change themselves partway through the season. None of it is legal advice, so confirm with DNR before you keep anything.
This part matters as much as the rest.