How this site works

This site tracks real daily fish counts recorded at sonar and weir counting stations across Alaska, then uses years of that history to project how a season is likely to unfold.

During the season, each river's page shows the actual daily counts recorded so far alongside a projected count for the same days, based on how previous seasons typically played out by that same date. This lets you compare this year's pace against history in real time.

Before a season starts, the site builds a full day-by-day projection for the upcoming year using historical timing patterns alone, since there's no current-season data yet to go on.

Finding the best settings: a projection can be built several different ways — which years to draw from, how to average them, whether to exclude unusually large or small years, and more. For many rivers, the site has already tested 72 different combinations of these settings against 15 years of real, already-known seasons to find the combination that would have predicted each one most accurately, and uses that automatically. Rivers that don't yet have enough years of history on record show a notice that generic default settings are in use instead.

You can also adjust every setting yourself — years of history to use, averaging method, outlier exclusion, uncertainty ranges, trend adjustment, and date alignment — to see how the projection responds.

A note on accuracy: these are historical-timing-based statistical estimates, not guaranteed forecasts. Treat them as a rough planning aid rather than a promise of what you'll see on the water.

A salmon wearing glasses and holding a tally clipboard, counting a school of salmon swimming past underwater.

Fish Count Projections

Historical run data and in-season projections for salmon counting locations. Pick a dataset below to see its counts.

37 rivers, 126 options

Dog Salmon River

Daily sonar counts and an in-season run projection based on historical timing.

Season
2026
52 days of data
Count to date
98
through Jul 29, 2026
Projected season total
99
20 prior seasons used
% of projection reached
99%
avg. historical pace: 98.8% by this date
Projection method: for each prior season, we compute what fraction of that season's total run had passed by July 29, average those fractions, then divide this season's count-to-date by that average. It's a simple historical-timing estimate, not a statistical forecast — treat it as a rough in-season indicator.
2027 Projected Daily Counts
Each day's projection uses a recency-weighted average share, giving more recent seasons more influence (each year back carries 85% of the weight of the year after it). This is computed across 9 prior seasons (2016–2025), applied to those seasons' weighted average total of 122. It's a rough forecast for a season with no data yet — not a statistical model.
1 outlier year excluded (2019) — hover the "Exclude outliers" control for details.
Days are aligned by time since season start rather than calendar date, so historically early or late seasons line up by day-of-season.
Trend-adjusted: the anchor total is scaled by 0.79× based on a linear fit of season totals over time, instead of assuming 2027 looks like a flat average of the selected years.
DateProjected Daily CountProjected Cumulative
Aug 16, 2027 0 124
Aug 15, 2027 0 124
Aug 14, 2027 0 124
Aug 13, 2027 0 124
Aug 12, 2027 0 124
Aug 11, 2027 0 124
Aug 10, 2027 0 124
Aug 9, 2027 0 124
Aug 8, 2027 0 124
Aug 7, 2027 0 124
Aug 6, 2027 0 124
Aug 5, 2027 1 124
Aug 4, 2027 0 123
Aug 3, 2027 0 123
Aug 2, 2027 0 123
Aug 1, 2027 0 123
Jul 31, 2027 0 123
Jul 30, 2027 0 123
Jul 29, 2027 0 123
Jul 28, 2027 0 123
Jul 27, 2027 0 123
Jul 26, 2027 0 123
Jul 25, 2027 0 123
Jul 24, 2027 0 123
Jul 23, 2027 0 123
Jul 22, 2027 0 123
Jul 21, 2027 0 123
Jul 20, 2027 0 123
Jul 19, 2027 0 123
Jul 18, 2027 0 123
Jul 17, 2027 0 123
Jul 16, 2027 0 123
Jul 15, 2027 1 123
Jul 14, 2027 0 122
Jul 13, 2027 0 122
Jul 12, 2027 0 122
Jul 11, 2027 1 122
Jul 10, 2027 1 121
Jul 9, 2027 1 120
Jul 8, 2027 0 119
Jul 7, 2027 1 119
Jul 6, 2027 1 118
Jul 5, 2027 1 117
Jul 4, 2027 0 116
Jul 3, 2027 1 116
Jul 2, 2027 1 115
Jul 1, 2027 1 114
Jun 30, 2027 2 113
Jun 29, 2027 0 111
Jun 28, 2027 3 111
Jun 27, 2027 3 108
Jun 26, 2027 2 105
Jun 25, 2027 2 103
Jun 24, 2027 2 101
Jun 23, 2027 3 99
Jun 22, 2027 4 96
Jun 21, 2027 3 92
Jun 20, 2027 4 89
Jun 19, 2027 2 85
Jun 18, 2027 6 83
Jun 17, 2027 4 77
Jun 16, 2027 8 73
Jun 15, 2027 2 65
Jun 14, 2027 6 63
Jun 13, 2027 9 57
Jun 12, 2027 5 48
Jun 11, 2027 3 43
Jun 10, 2027 4 40
Jun 9, 2027 7 36
Jun 8, 2027 2 29
Jun 7, 2027 3 27
Jun 6, 2027 7 24
Jun 5, 2027 3 17
Jun 4, 2027 6 14
Jun 3, 2027 4 8
Jun 2, 2027 2 4
Jun 1, 2027 2 2

Highlighted cells are the top 5 projected daily counts.

2026 Daily Counts
Every calendar day of the season gets a projected value, shown alongside the actual count for days we've already counted (through July 29), so you can compare actual vs. projected directly. Each day's projection uses a recency-weighted average share, giving more recent seasons more influence (each year back carries 85% of the weight of the year after it). This is computed across 9 prior seasons (2016–2025), applied to those seasons' weighted average total of 127. It's a rough forecast, not a statistical model.
1 outlier year excluded (2019) — hover the "Exclude outliers" control for details.
Days are aligned by time since season start (day 1 = Jun 8) rather than calendar date, so historically early or late seasons line up by day-of-season.
Trend-adjusted: the anchor total is scaled by 0.82× based on a linear fit of season totals over time.
Date Actual Daily Count Projected Daily Count Actual Cumulative Projected Cumulative
Aug 23, 2026 0 127
Aug 22, 2026 0 127
Aug 21, 2026 0 127
Aug 20, 2026 0 127
Aug 19, 2026 0 127
Aug 18, 2026 0 127
Aug 17, 2026 0 127
Aug 16, 2026 1 127
Aug 15, 2026 0 126
Aug 14, 2026 0 126
Aug 13, 2026 0 126
Aug 12, 2026 1 126
Aug 11, 2026 0 125
Aug 10, 2026 0 125
Aug 9, 2026 0 125
Aug 8, 2026 0 125
Aug 7, 2026 0 125
Aug 6, 2026 0 125
Aug 5, 2026 0 125
Aug 4, 2026 0 125
Aug 3, 2026 0 125
Aug 2, 2026 0 125
Aug 1, 2026 0 125
Jul 31, 2026 0 125
Jul 30, 2026 0 125
Jul 29, 2026 0 0 98 125
Jul 28, 2026 0 0 98 125
Jul 27, 2026 0 0 98 125
Jul 26, 2026 0 0 98 125
Jul 25, 2026 0 0 98 125
Jul 24, 2026 0 0 98 125
Jul 23, 2026 0 0 98 125
Jul 22, 2026 0 1 98 125
Jul 21, 2026 0 0 98 124
Jul 20, 2026 0 0 98 124
Jul 19, 2026 0 0 98 124
Jul 18, 2026 0 1 98 124
Jul 17, 2026 1 1 98 123
Jul 16, 2026 0 1 97 122
Jul 15, 2026 2 0 97 121
Jul 14, 2026 4 1 95 121
Jul 13, 2026 0 1 91 120
Jul 12, 2026 2 1 91 119
Jul 11, 2026 1 0 89 118
Jul 10, 2026 0 1 88 118
Jul 9, 2026 0 1 88 117
Jul 8, 2026 6 1 88 116
Jul 7, 2026 2 2 82 115
Jul 6, 2026 2 0 80 113
Jul 5, 2026 1 3 78 113
Jul 4, 2026 8 3 77 110
Jul 3, 2026 1 2 69 107
Jul 2, 2026 4 2 68 105
Jul 1, 2026 2 2 64 103
Jun 30, 2026 1 3 62 101
Jun 29, 2026 4 4 61 98
Jun 28, 2026 5 3 57 94
Jun 27, 2026 5 4 52 91
Jun 26, 2026 2 2 47 87
Jun 25, 2026 0 6 45 85
Jun 24, 2026 2 4 45 79
Jun 23, 2026 2 8 43 75
Jun 22, 2026 2 2 41 67
Jun 21, 2026 4 7 39 65
Jun 20, 2026 15 9 35 58
Jun 19, 2026 4 5 20 49
Jun 18, 2026 0 3 16 44
Jun 17, 2026 0 4 16 41
Jun 16, 2026 3 7 16 37
Jun 15, 2026 0 2 13 30
Jun 14, 2026 3 3 13 28
Jun 13, 2026 2 7 10 25
Jun 12, 2026 3 3 8 18
Jun 11, 2026 2 6 5 15
Jun 10, 2026 2 5 3 9
Jun 9, 2026 0 2 1 4
Jun 8, 2026 1 2 1 2

Highlighted cells are the top 5 actual and top 5 projected daily counts.

Backtest a Prior Year
This uses only years strictly before 2025 as the reference pool (19 available, 2006–2024) — 2025 itself is never used to predict itself, so this is a genuine out-of-sample test of the projection method.
Each day's projection uses a recency-weighted average share. Computed across 9 prior seasons (2015–2024), applied to those seasons' weighted average total of 159.
1 outlier year excluded (2019).
Days are aligned by time since season start (day 1 = Jun 9).
Trend-adjusted: anchor total scaled by 0.93×.
Date Actual Daily Count Projected Daily Count Actual Cumulative Projected Cumulative
Aug 24, 2025 0 156
Aug 23, 2025 0 156
Aug 22, 2025 0 156
Aug 21, 2025 0 156
Aug 20, 2025 0 156
Aug 19, 2025 0 156
Aug 18, 2025 0 156
Aug 17, 2025 1 156
Aug 16, 2025 0 155
Aug 15, 2025 0 155
Aug 14, 2025 0 155
Aug 13, 2025 1 155
Aug 12, 2025 0 154
Aug 11, 2025 0 154
Aug 10, 2025 0 154
Aug 9, 2025 0 154
Aug 8, 2025 0 154
Aug 7, 2025 0 154
Aug 6, 2025 0 154
Aug 5, 2025 0 0 89 154
Aug 4, 2025 0 0 89 154
Aug 3, 2025 0 0 89 154
Aug 2, 2025 0 1 89 154
Aug 1, 2025 0 0 89 153
Jul 31, 2025 0 0 89 153
Jul 30, 2025 0 1 89 153
Jul 29, 2025 0 0 89 152
Jul 28, 2025 0 0 89 152
Jul 27, 2025 0 0 89 152
Jul 26, 2025 0 0 89 152
Jul 25, 2025 0 0 89 152
Jul 24, 2025 0 0 89 152
Jul 23, 2025 0 1 89 152
Jul 22, 2025 0 1 89 151
Jul 21, 2025 0 0 89 150
Jul 20, 2025 0 0 89 150
Jul 19, 2025 0 1 89 150
Jul 18, 2025 0 1 89 149
Jul 17, 2025 1 1 89 148
Jul 16, 2025 0 0 88 147
Jul 15, 2025 0 1 88 147
Jul 14, 2025 0 2 88 146
Jul 13, 2025 1 1 88 144
Jul 12, 2025 0 1 87 143
Jul 11, 2025 0 1 87 142
Jul 10, 2025 0 1 87 141
Jul 9, 2025 0 1 87 140
Jul 8, 2025 1 3 87 139
Jul 7, 2025 0 1 86 136
Jul 6, 2025 2 4 86 135
Jul 5, 2025 0 4 84 131
Jul 4, 2025 0 3 84 127
Jul 3, 2025 0 3 84 124
Jul 2, 2025 0 3 84 121
Jul 1, 2025 1 4 84 118
Jun 30, 2025 8 3 83 114
Jun 29, 2025 1 4 75 111
Jun 28, 2025 1 5 74 107
Jun 27, 2025 1 2 73 102
Jun 26, 2025 1 9 72 100
Jun 25, 2025 2 6 71 91
Jun 24, 2025 3 11 69 85
Jun 23, 2025 0 4 66 74
Jun 22, 2025 4 8 66 70
Jun 21, 2025 1 15 62 62
Jun 20, 2025 1 7 61 47
Jun 19, 2025 0 4 60 40
Jun 18, 2025 1 6 60 36
Jun 17, 2025 13 5 59 30
Jun 16, 2025 2 2 46 25
Jun 15, 2025 1 5 44 23
Jun 14, 2025 18 3 43 18
Jun 13, 2025 0 4 25 15
Jun 12, 2025 10 5 25 11
Jun 11, 2025 8 3 15 6
Jun 10, 2025 4 1 7 3
Jun 9, 2025 3 2 3 2

Highlighted cells are the top 5 actual and top 5 projected daily counts for 2025.