North Dakota 24/7 Rank
Every station in North Dakota ranked by its 247 score out of 100: how reliably it reports, how accurate its readings are against a reference station, how they pass their checks and how they stand against the forecast, over the last seven days.
A station is ranked once its week holds enough reports to measure: 12, or 3 days for a gauge that reports once a day. Of the 312 ranked here, 304 have a page of their own; the rest are platforms heard here that have not yet reported enough to be listed.
Every ranked station, first to last
How they reported this week
The days behind it
every report90 to 99%under 90%
Every station, ranked
| Rank | Station | Score | Parts | Network | County | Received | Reports | Arrives in | Longest silence |
|---|---|---|---|---|---|---|---|---|---|
| 1 | Devils_LakeDVL | 99.7 | Airport | Ramsey | 100% | 168 of 168 | 5 min | 74 min | |
| 2 | JamestownJMS | 98.7 | Airport | Stutsman | 100% | 168 of 168 | 5 min | 60 min | |
| 3 | GarrisonN60 | 98.7 | Airport | McLean | 100% | 168 of 168 | 7 min | 60 min | |
| 4 | Minot_INTLMOT | 98.7 | Airport | Ward | 100% | 168 of 168 | 7 min | 60 min | |
| 5 | FargoFAR | 98.3 | Airport | Cass | 100% | 168 of 168 | 8 min | 60 min | |
| 6 | Velva 3 NEVLAN8 | 98.3 | Cooperative | Mchenry | 100% | 7 of 7 | 5 min | 24 h | |
| 7 | State HospitalJTWN8 | 98.3 | Cooperative | Stutsman | 100% | 7 of 7 | 15 min | 24 h | |
| 8 | Dunn CenterDNCN8 | 98.3 | Cooperative | Dunn | 100% | 7 of 7 | 15 min | 27 h | |
| 9 | BottineauBOTN8 | 98.3 | Cooperative | Bottineau | 100% | 7 of 7 | 16 min | 25.4 h | |
| 10 | Mc Leod 3 EMCLN8 | 98.3 | Cooperative | Richland | 100% | 7 of 7 | 25 min | 25 h | |
| 11 | CavalierCVLN8 | 98.3 | Cooperative | Pembina | 100% | 7 of 7 | 25 min | 24 h | |
| 11 | LansfordLFDN8 | 98.3 | Cooperative | Bottineau | 100% | 7 of 7 | 25 min | 24 h | |
| 13 | UnderwoodUNDN8 | 98.3 | Cooperative | Mclean | 100% | 7 of 7 | 25 min | 24 h | |
| 14 | Bottineau 6.4 ENEND-BT-11 | 98.3 | Volunteer | Bottineau | 100% | 7 of 7 | 26 min | 24 h | |
| 15 | Larimore 0.4 SEND-GF-23 | 98.3 | Volunteer | Grand Forks | 100% | 7 of 7 | 26 min | 24 h | |
| 15 | Mayville 4.2 SSEND-TR-5 | 98.3 | Volunteer | Traill | 100% | 7 of 7 | 26 min | 24 h | |
| 17 | Milnor 1.8 NNWND-RS-4 | 98.3 | Volunteer | Ransom | 100% | 7 of 7 | 26 min | 24 h | |
| 18 | Watford City 1.3 NNWND-MK-6 | 98.3 | Volunteer | McKenzie | 100% | 7 of 7 | 26 min | 24 h | |
| 19 | Pingree 5.4 NWND-SM-14 | 98.3 | Volunteer | Stutsman | 100% | 7 of 7 | 26 min | 24 h | |
| 20 | Hazen 0.4 SWND-MR-2 | 98.3 | Volunteer | Mercer | 100% | 7 of 7 | 26 min | 24 h | |
| 21 | KilldeerKLLN8 | 98.3 | Cooperative | Dunn | 100% | 7 of 7 | 35 min | 24.3 h | |
| 22 | Minot 1.6 SSWND-WR-20 | 98.3 | Volunteer | Ward | 100% | 7 of 7 | 85 min | 24 h | |
| 23 | Valley City 3.0 SEND-BR-9 | 98.3 | Volunteer | Barnes | 100% | 7 of 7 | 86 min | 25 h | |
| 24 | Maxbass 4.9 ENEND-BT-8 | 98.3 | Volunteer | Bottineau | 100% | 7 of 7 | 86 min | 24 h | |
| 24 | West Fargo 2.1 SSWND-CS-79 | 98.3 | Volunteer | Cass | 100% | 7 of 7 | 86 min | 24 h | |
| 26 | Killdeer 0.6 WNWND-DN-2 | 98.3 | Volunteer | Dunn | 100% | 7 of 7 | 86 min | 25 h | |
| 27 | Ellendale 7.3 NWND-DC-13 | 98.3 | Volunteer | Dickey | 100% | 7 of 7 | 86 min | 24 h | |
| 28 | Fargo 4.3 SND-CS-24 | 98.3 | Volunteer | Cass | 100% | 7 of 7 | 86 min | 24 h | |
| 29 | Dunn Center 1.8 WND-DN-20 | 98.3 | Volunteer | Dunn | 100% | 7 of 7 | 86 min | 24 h | |
| 30 | Valley City 2.0 NWND-BR-2 | 98.3 | Volunteer | Barnes | 100% | 7 of 7 | 86 min | 24 h | |
| 31 | Montpelier 3.3 ESEND-SM-12 | 98.3 | Volunteer | Stutsman | 100% | 7 of 7 | 86 min | 24 h | |
| 32 | BowmanBOWN8 | 98.3 | Cooperative | Bowman | 100% | 7 of 7 | 1.6 h | 24 h | |
| 33 | DickinsonDIK | 98.2 | Airport | Stark | 100% | 168 of 168 | 5 min | 69 min | |
| 34 | Grand_ForksGFK | 98.2 | Airport | Grand Forks | 100% | 168 of 168 | 8 min | 60 min | |
| 35 | Grandin 7.1 ENEND-TR-3 | 98.2 | Volunteer | Traill | 100% | 7 of 7 | 2.4 h | 24 h | |
| 36 | Cavalier 7.9 WNWND-PM-1 | 98.2 | Volunteer | Pembina | 100% | 7 of 7 | 2.4 h | 24 h | |
| 36 | Dickinson 1.3 WNWND-SK-12 | 98.2 | Volunteer | Stark | 100% | 7 of 7 | 2.4 h | 24 h | |
| 38 | Wahpeton 1.0 SSEND-RC-14 | 98.2 | Volunteer | Richland | 100% | 7 of 7 | 2.4 h | 24 h | |
| 39 | Monango 3.6 NWND-DC-7 | 98.2 | Volunteer | Dickey | 100% | 7 of 7 | 2.4 h | 24 h | |
| 40 | Grand Forks 3.9 NND-GF-22 | 98.2 | Volunteer | Grand Forks | 100% | 7 of 7 | 2.4 h | 24 h | |
| 41 | BismarckBIS | 98.0 | Airport | Burleigh | 100% | 168 of 168 | 9 min | 60 min | |
| 42 | VLAN8VLAN8 | 98.0 | DCP | - | 100% | 7 of 7 | 2.9 h | 24 h | |
| 43 | Spring Creek AT ZapZAPN8 | 97.9 | Gauge | Mercer | 100% | 168 of 168 | 12 min | 60 min | |
| 44 | Red River 2 NE DraytonDRTN8 | 97.9 | Gauge | Pembina | 100% | 168 of 168 | 12 min | 60 min | |
| 45 | Heart River 9 SSE JudsonJUDN8 | 97.9 | Gauge | Morton | 100% | 168 of 168 | 12 min | 60 min | |
| 45 | Missouri River 13 SE MandanMANN8 | 97.9 | Gauge | Morton | 100% | 168 of 168 | 12 min | 60 min | |
| 45 | Heart River 3W AT MandanMDNN8 | 97.9 | Gauge | Morton | 100% | 168 of 168 | 12 min | 60 min | |
| 45 | Missouri River 1 S PricePRCN8 | 97.9 | Gauge | Oliver | 100% | 168 of 168 | 12 min | 60 min | |
| 45 | RiverSTNN8 | 97.9 | Gauge | Mercer | 100% | 168 of 168 | 12 min | 60 min | |
| 45 | Missouri AT WashburnWSBN8 | 97.9 | Gauge | Oliver | 100% | 168 of 168 | 12 min | 60 min | |
| 51 | Missouri River AT BismarckBIWN8 | 97.9 | Gauge | Burleigh | 100% | 168 of 168 | 12 min | 60 min | |
| 51 | James River AT LamoureLAMN8 | 97.9 | Gauge | La Moure | 100% | 168 of 168 | 12 min | 60 min | |
| 53 | Fargo 6.3 SND-CS-77 | 97.8 | Volunteer | Cass | 100% | 7 of 7 | 3.4 h | 24 h | |
| 54 | Garrison 2.1 SSWND-ML-7 | 97.8 | Volunteer | McLean | 100% | 7 of 7 | 3.4 h | 24 h | |
| 55 | Sheyenne River Near Warwick05056000 | 97.7 | Gauge | Eddy | 100% | 168 of 168 | 13 min | 64 min | |
| 55 | Baldhill Creek Near Dazey05057200 | 97.7 | Gauge | Barnes | 100% | 168 of 168 | 13 min | 64 min | |
| 57 | Sheyenne River Near Cooperstown05057000 | 97.7 | Gauge | Griggs | 100% | 168 of 168 | 13 min | 75 min | |
| 58 | Arrowwood 2AWWN8 | 97.7 | Gauge | Stutsman | 100% | 168 of 168 | 13 min | 60 min | |
| 59 | Sheyenne River AT HarwoodHWDN8 | 97.6 | Gauge | Cass | 99.4% | 167 of 168 | 12 min | 2 h | |
| 60 | Tatanka PrairieTTKN8 | 97.5 | Gauge | Sioux | 98.8% | 166 of 168 | 12 min | 2 h | |
| 61 | Des Lacs River AT FoxholmDESN8 | 97.5 | Gauge | Ward | 98.8% | 166 of 168 | 12 min | 2 h | |
| 62 | Minot 4NWMINN8 | 97.2 | Gauge | Ward | 98.2% | 165 of 168 | 12 min | 2 h | |
| 62 | Souris River 3 AT VerendryeVRNN8 | 97.2 | Gauge | Mchenry | 98.2% | 165 of 168 | 12 min | 2 h | |
| 62 | Westhope 6NNEWTHN8 | 97.2 | Gauge | Bottineau | 98.2% | 165 of 168 | 12 min | 2 h | |
| 65 | Newborg 5NNENBGN8 | 97.2 | Gauge | Bottineau | 98.2% | 165 of 168 | 12 min | 2 h | |
| 66 | Spirit Lake Casino On Devils LakeFRTN8 | 97.1 | Gauge | Benson | 100% | 168 of 168 | 16 min | 73 min | |
| 67 | Belcourt - Turtle Mountain RAWSTMTN8 | 97.1 | Gauge | Rolette | 99.4% | 167 of 168 | 15 min | 2 h | |
| 68 | Medora 7EMRAN8 | 96.9 | Gauge | Billings | 100% | 168 of 168 | 17 min | 60 min | |
| 68 | Red River AT PembinaPBNN8 | 96.9 | Gauge | Pembina | 100% | 168 of 168 | 17 min | 60 min | |
| 68 | Starkweather Coulee 4NW AT WebsterWEBN8 | 96.9 | Gauge | Ramsey | 100% | 168 of 168 | 17 min | 60 min | |
| 71 | Beaver Creek 1 W LintonBVRN8 | 96.9 | Gauge | Emmons | 100% | 168 of 168 | 17 min | 64 min | |
| 71 | Maple River 1 E EnderlinENDN8 | 96.9 | Gauge | Ransom | 100% | 168 of 168 | 17 min | 64 min | |
| 71 | S Br Park River AT Homme DamHOMN8 | 96.9 | Gauge | Walsh | 100% | 168 of 168 | 17 min | 64 min | |
| 74 | Sheyenne River AT CooperstownCPRN8 | 96.9 | Gauge | Griggs | 100% | 168 of 168 | 17 min | 64 min | |
| 74 | Sheyenne River 3S AT WarwickWRWN8 | 96.9 | Gauge | Eddy | 100% | 168 of 168 | 17 min | 64 min | |
| 76 | Heart River 10 S RichardtonRICN8 | 96.9 | Gauge | Stark | 100% | 168 of 168 | 17 min | 64 min | |
| 77 | Mauvais Coulee Trib #3 AT Mauvias Coulee Trib #3 near CandoMCTN8 | 96.9 | Gauge | Towner | 100% | 168 of 168 | 17 min | 75 min | |
| 77 | Red River AT WahpetonWHNN8 | 96.9 | Gauge | Richland | 100% | 168 of 168 | 17 min | 75 min | |
| 79 | Sheyenne National GrasslandsSNGN8 | 96.7 | Gauge | Ransom | 100% | 168 of 168 | 18 min | 75 min | |
| 80 | James River At Lamoure06470500 | 96.7 | Gauge | LaMoure | 100% | 168 of 168 | 18 min | 60 min | |
| 81 | Rock Lake near Glenora MBRLGQ3 | 96.7 | Gauge | Towner | 99.4% | 167 of 168 | 17 min | 2 h | |
| 82 | Nd Jamestown 38 WSWJTNN8 | 96.7 | Gauge | Kidder | 99.4% | 167 of 168 | 17 min | 1.5 h | |
| 83 | RAWS Site-Nr Sand CRKAMDN8 | 96.7 | Gauge | Slope | 99.4% | 167 of 168 | 17 min | 2 h | |
| 84 | Nd Northgate 5 ESENGTN8 | 96.6 | Gauge | Burke | 99.4% | 167 of 168 | 17 min | 2 h | |
| 85 | Minot_AFBMIB | 96.6 | Airport | Ward | 98.8% | 168 of 170 | 16 min | 80 min | |
| 86 | Crosby Automated Weather Station.CSBN8 | 96.5 | Gauge | Divide | 100% | 168 of 168 | 19 min | 68 min | |
| 87 | Hampden RAWSHMDN8 | 96.5 | Gauge | Ramsey | 100% | 168 of 168 | 19 min | 66 min | |
| 88 | Mandan #1 ScanMNDN8 | 96.5 | Gauge | Morton | 98.8% | 166 of 168 | - | 2 h | |
| 89 | Westhope 0.1 NND-BT-9 | 96.4 | Volunteer | Bottineau | 100% | 7 of 7 | 6.4 h | 30 h | |
| 90 | Edgeley 5.2 NWND-LM-3 | 96.4 | Volunteer | LaMoure | 100% | 7 of 7 | 6.4 h | 24 h | |
| 91 | Mandan #1S2020 | 96.4 | Soil | Morton | 98.8% | 166 of 168 | - | 2 h | |
| 92 | Sheyenne River AT Flora above Devils Lake outletFLRN8 | 96.4 | Gauge | Benson | 95.8% | 161 of 168 | 12 min | 2 h | |
| 93 | Lake Ilo NWRLKIN8 | 96.3 | Gauge | Dunn | 98.2% | 165 of 168 | 17 min | 2 h | |
| 94 | J. Clark SalyerJCSN8 | 96.2 | Gauge | Mchenry | 99.4% | 167 of 168 | 19 min | 2 h | |
| 95 | Willow Creek 7 AT Willow CityWLCN8 | 96.2 | Gauge | Mchenry | 98.2% | 165 of 168 | 17 min | 2 h | |
| 95 | Williston - Missouri River No9WLRN8 | 96.2 | Gauge | Williams | 98.2% | 165 of 168 | 17 min | 2 h | |
| 97 | Souris River 7 AT WesthopeWSTN8 | 96.2 | Gauge | Bottineau | 98.2% | 165 of 168 | 17 min | 2 h | |
| 98 | Dry Lake AT Dry Lake near PennDLCN8 | 96.0 | Gauge | Ramsey | 100% | 168 of 168 | 21 min | 60 min | |
| 99 | Yellowstone River 2 W CartwrightCTWN8 | 96.0 | Gauge | Mckenzie | 100% | 168 of 168 | 22 min | 60 min | |
| 99 | Fort Ransom State Park - Sheyenne RiverFRSN8 | 96.0 | Gauge | Ransom | 100% | 168 of 168 | 22 min | 60 min | |
| 99 | James River 3 W Grace CityGCEN8 | 96.0 | Gauge | Foster | 100% | 168 of 168 | 22 min | 60 min | |
| 99 | Cedar Creek 13 N HaynesHCCN8 | 96.0 | Gauge | Adams | 100% | 168 of 168 | 22 min | 60 min | |
| 99 | Sheyenne River AT Horace above W.F. DiversionHRCN8 | 96.0 | Gauge | Cass | 100% | 168 of 168 | 22 min | 60 min | |
| 99 | JamestownJMSN8 | 96.0 | Gauge | Stutsman | 100% | 168 of 168 | 22 min | 60 min | |
| 99 | James River 8NNW AT KensalKSLN8 | 96.0 | Gauge | Foster | 100% | 168 of 168 | 22 min | 60 min | |
| 99 | Pipestem Creek 3W AT PingreePGEN8 | 96.0 | Gauge | Stutsman | 100% | 168 of 168 | 22 min | 60 min | |
| 107 | LostwoodLWDN8 | 95.9 | Gauge | Burke | 100% | 168 of 168 | 18 min | 67 min | |
| 108 | Goose River AT HillsboroHGRN8 | 95.9 | Gauge | Traill | 100% | 168 of 168 | 22 min | 60 min | |
| 108 | Little Coulee AT Little Coulee near LeedsLEDN8 | 95.9 | Gauge | Benson | 100% | 168 of 168 | 22 min | 60 min | |
| 108 | Little Pembina River AT Little Pembina RiverLPRN8 | 95.9 | Gauge | Cavalier | 100% | 168 of 168 | 22 min | 60 min | |
| 108 | Turtle River 1NW AT ArvillaLTRN8 | 95.9 | Gauge | Grand Forks | 100% | 168 of 168 | 22 min | 60 min | |
| 108 | Maple River 3 SW MapletonMPLN8 | 95.9 | Gauge | Cass | 100% | 168 of 168 | 22 min | 60 min | |
| 108 | Red River 8 E Thompson BridgeTPNN8 | 95.9 | Gauge | Grand Forks | 100% | 168 of 168 | 22 min | 60 min | |
| 108 | Sheyenne River AT West Fargo DiversionWFON8 | 95.9 | Gauge | Cass | 100% | 168 of 168 | 22 min | 60 min | |
| 115 | Minot Broadway BridgeMION8 | 95.9 | Gauge | Ward | 100% | 168 of 168 | 22 min | 79 min | |
| 115 | Pembina River AT NecheNCEN8 | 95.9 | Gauge | Pembina | 100% | 168 of 168 | 22 min | 79 min | |
| 115 | Sheyenne River AT Valley CityVCRN8 | 95.9 | Gauge | Barnes | 100% | 168 of 168 | 22 min | 79 min | |
| 118 | Red River AT FargoFGON8 | 95.9 | Gauge | Cass | 100% | 168 of 168 | 22 min | 60 min | |
| 118 | MintoMTON8 | 95.9 | Gauge | Walsh | 100% | 168 of 168 | 22 min | 60 min | |
| 120 | Bear Creek 6 NNE OakesBCKN8 | 95.9 | Gauge | Dickey | 100% | 168 of 168 | 22 min | 79 min | |
| 121 | Beaver Creek 13 SSW TrottersTRTN8 | 95.7 | Gauge | Golden Valley | 99.4% | 167 of 168 | 22 min | 2 h | |
| 122 | Big Coulee AT Churchs Ferry Big CouleeCFCN8 | 95.7 | Gauge | Ramsey | 99.4% | 167 of 168 | 22 min | 2 h | |
| 122 | Forest River 3SE AT FordvilleFDVN8 | 95.7 | Gauge | Walsh | 99.4% | 167 of 168 | 22 min | 2 h | |
| 122 | James River AT Jamestown DamJMDN8 | 95.7 | Gauge | Stutsman | 99.4% | 167 of 168 | 22 min | 2 h | |
| 122 | Cannonball River 16 S RaleighRLHN8 | 95.7 | Gauge | Grant | 99.4% | 167 of 168 | 22 min | 2 h | |
| 126 | Sheyenne River AT Sheyenne River at Gol BridgeGOLN8 | 95.7 | Gauge | Richland | 99.4% | 167 of 168 | 22 min | 2 h | |
| 126 | Red River 1 SE HicksonHICN8 | 95.7 | Gauge | Cass | 99.4% | 167 of 168 | 22 min | 2 h | |
| 128 | Knife River 9S AT Golden ValleyGDVN8 | 95.5 | Gauge | Mercer | 98.8% | 166 of 168 | 22 min | 2 h | |
| 129 | Square Butte Creek 6SE AT CenterCETN8 | 95.4 | Gauge | Oliver | 98.8% | 166 of 168 | 22 min | 2 h | |
| 130 | Bowman Haley DamBWNN8 | 95.3 | Gauge | Bowman | 98.2% | 165 of 168 | 22 min | 2 h | |
| 131 | Cannonball River AT RegentREGN8 | 95.2 | Gauge | Hettinger | 98.2% | 220 of 224 | 22 min | 64 min | |
| 132 | Goose River 5 NW Portland 5 NWPRTN8 | 95.2 | Gauge | Traill | 98.2% | 165 of 168 | 22 min | 2 h | |
| 133 | Park River AT GraftonGRNN8 | 94.9 | Gauge | Walsh | 100% | 168 of 168 | 27 min | 60 min | |
| 133 | Sheyenne River 5 S Sheyenne R abv Harvey NDHVYN8 | 94.9 | Gauge | Wells | 100% | 168 of 168 | 27 min | 60 min | |
| 133 | Bear Den Creek 6NW AT MandareeMREN8 | 94.9 | Gauge | Mckenzie | 100% | 168 of 168 | 27 min | 60 min | |
| 136 | Upham 4NUHMN8 | 94.9 | Gauge | McHenry | 100% | 168 of 168 | 27 min | 64 min | |
| 137 | Tongue River 1 W AkraAKRN8 | 94.9 | Gauge | Pembina | 100% | 168 of 168 | 27 min | 64 min | |
| 137 | Bantry 7N - Pool 320BNYN8 | 94.9 | Gauge | McHenry | 100% | 168 of 168 | 27 min | 64 min | |
| 137 | Foxholm 3EFXHN8 | 94.9 | Gauge | Ward | 100% | 168 of 168 | 27 min | 64 min | |
| 137 | Horace - Sheyenne RIverHORN8 | 94.9 | Gauge | Cass | 100% | 168 of 168 | 27 min | 64 min | |
| 137 | Kramer 4WSWKAMN8 | 94.9 | Gauge | Bottineau | 100% | 168 of 168 | 27 min | 64 min | |
| 137 | Maple River 1 N Mapleton (North of I-94)MAPN8 | 94.9 | Gauge | Cass | 100% | 168 of 168 | 27 min | 64 min | |
| 137 | Velva - Bonnes CouleeVELN8 | 94.9 | Gauge | McHenry | 100% | 168 of 168 | 27 min | 64 min | |
| 144 | Knife River AT ManningMNGN8 | 94.9 | Gauge | Dunn | 100% | 168 of 168 | 27 min | 64 min | |
| 145 | Cedar Creek 19S AT RaleighRLGN8 | 94.9 | Gauge | Grant | 100% | 168 of 168 | 27 min | 64 min | |
| 146 | Sheyenne River AT Bremen below Devils Lake OutletBRMN8 | 94.9 | Gauge | Eddy | 100% | 168 of 168 | 27 min | 64 min | |
| 146 | Kloten - Sheyenne RiverMVCN8 | 94.9 | Gauge | Nelson | 100% | 168 of 168 | 27 min | 64 min | |
| 146 | Wild Rice River at Wild RiceSTBN8 | 94.9 | Gauge | Cass | 100% | 168 of 168 | 27 min | 64 min | |
| 146 | Sheyenne River AT West FargoWSFN8 | 94.9 | Gauge | Cass | 100% | 168 of 168 | 27 min | 64 min | |
| 150 | Bone Lake Outlet near Ninette MBBLNQ3 | 94.8 | Gauge | Rolette | 96.4% | 162 of 168 | 21 min | 2 h | |
| 151 | Red River AT HalstadHILN8 | 94.7 | Gauge | Traill | 99.4% | 167 of 168 | 27 min | 2 h | |
| 152 | Red River of the North 3 N EnloENLN8 | 94.7 | Gauge | Richland | 99.4% | 167 of 168 | 27 min | 2 h | |
| 153 | Grand Forks Univ (NWS)GRFN8 | 94.5 | Cooperative | Grand Forks | 89.2% | 25 of 28 | 23 min | 12.3 h | |
| 154 | Heart River AT Dickinson DamDNDN8 | 94.3 | Gauge | Stark | 98.2% | 165 of 168 | 27 min | 2 h | |
| 155 | Souris River 8 AT BantryBANN8 | 94.3 | Gauge | Mchenry | 98.2% | 165 of 168 | 27 min | 2 h | |
| 155 | Green River 8 W New HradecHRAN8 | 94.3 | Gauge | Billings | 98.2% | 165 of 168 | 27 min | 2 h | |
| 155 | Wintering River 5 AT KarlsruheKLSN8 | 94.3 | Gauge | Mchenry | 98.2% | 165 of 168 | 27 min | 2 h | |
| 155 | Long Creek 7 NNW NoonanNOON8 | 94.3 | Gauge | Divide | 98.2% | 165 of 168 | 27 min | 2 h | |
| 155 | Heart River 16 S HebronTCHN8 | 94.3 | Gauge | Grant | 98.2% | 165 of 168 | 27 min | 2 h | |
| 160 | Pipestem Creek AT Pipestem DamJAMN8 | 94.3 | Gauge | Stutsman | 95.2% | 160 of 168 | 22 min | 2 h | |
| 161 | Little Missouri River 14S AT Watford CityWTFN8 | 94.2 | Gauge | Mckenzie | 98.2% | 330 of 336 | 27 min | 60 min | |
| 162 | E. Br. Short Creek 6 AT ColumbusCLBN8 | 94.2 | Gauge | Burke | 98.2% | 165 of 168 | 27 min | 3 h | |
| 163 | Mauvais Coulee 6SE AT CandoCNDN8 | 94.0 | Gauge | Towner | 100% | 168 of 168 | 31 min | 60 min | |
| 164 | Edmore Coulee AT EdmoreEDEN8 | 93.9 | Gauge | Ramsey | 100% | 168 of 168 | 32 min | 60 min | |
| 165 | Souris River 3 AT FoxholmFOXN8 | 93.9 | Gauge | Ward | 97.0% | 163 of 168 | 27 min | 3 h | |
| 166 | Lake Darling Near Foxholm05115500 | 93.7 | Gauge | Ward | 100% | 168 of 168 | 33 min | 64 min | |
| 167 | CooperstownCPPN8 | 93.6 | Gauge | Griggs | 98.2% | 165 of 168 | 30 min | 2 h | |
| 168 | Sheyenne River AT Baldhill Dam at Lake AshtabulaBLDN8 | 93.3 | Gauge | Barnes | 95.5% | 214 of 224 | 27 min | 64 min | |
| 169 | Missouri River 5SW AT WillistonWLTN8 | 93.2 | Gauge | Williams | 98.2% | 220 of 224 | 32 min | 64 min | |
| 170 | Apple Creek 6W AT MenokenMENN8 | 93.2 | Gauge | Burleigh | 97.6% | 164 of 168 | 31 min | 2 h | |
| 171 | Site 1-3MI.NPBAN8 | 93.2 | Cooperative | Pembina | 85.7% | 6 of 7 | 25 min | 37.1 h | |
| 172 | NapoleonNPLN8 | 93.2 | Cooperative | Logan | 85.7% | 6 of 7 | 55 min | 24 h | |
| 173 | Cooperstown 0.4 WNWND-GG-3 | 93.2 | Volunteer | Griggs | 85.7% | 6 of 7 | 86 min | 37.1 h | |
| 174 | Minot 1.5 SSWND-WR-4 | 93.2 | Volunteer | Ward | 85.7% | 6 of 7 | 86 min | 25 h | |
| 175 | Beach 0.3 SSEND-GV-1 | 93.2 | Volunteer | Golden Valley | 85.7% | 6 of 7 | 2.4 h | 2 days | |
| 176 | Durbin 5.4 WNWND-CS-32 | 93.2 | Volunteer | Cass | 85.7% | 6 of 7 | 2.4 h | 2 days | |
| 177 | Jamestown 0.5 END-SM-22 | 93.2 | Volunteer | Stutsman | 85.7% | 6 of 7 | 2.4 h | 24 h | |
| 178 | Antelope Creek 9 NW CarsonCRSN8 | 92.8 | Gauge | Grant | 98.2% | 165 of 168 | 34 min | 3 h | |
| 179 | MayvilleMYVN8 | 92.8 | Cooperative | Traill | 85.7% | 6 of 7 | 3.4 h | 24 h | |
| 180 | Knife River Near BeulahKRBN8 | 92.6 | Gauge | Mercer | 98.2% | 165 of 168 | 35 min | 3 h | |
| 181 | South Heart 2E - Heart RiverSRHN8 | 92.4 | Gauge | Stark | 97.6% | 164 of 168 | 35 min | 3 h | |
| 182 | Mandan - Missouri RiverMMRN8 | 92.3 | Gauge | Morton | 98.2% | 165 of 168 | 37 min | 3 h | |
| 183 | Big Muddy CrkALTN8 | 92.3 | Gauge | Morton | 98.2% | 165 of 168 | 37 min | 3 h | |
| 183 | Little Missouri AT MarmarthMTHN8 | 92.3 | Gauge | Slope | 98.2% | 165 of 168 | 37 min | 3 h | |
| 185 | Harvey5H4 | 92.3 | Airport | Wells | 89.2% | 450 of 504 | 6 min | 2.7 h | |
| 186 | BowmanBWW | 92.3 | Airport | Bowman | 88.8% | 448 of 504 | 6 min | 2.7 h | |
| 187 | BottineauD09 | 92.2 | Airport | Bottineau | 99.6% | 502 of 504 | 6 min | 40 min | |
| 188 | Knife River 1S AT HazenHZNN8 | 92.2 | Gauge | Mercer | 98.2% | 165 of 168 | 37 min | 3 h | |
| 189 | RandsS32 | 92.2 | Airport | Griggs | 88.8% | 448 of 504 | 6 min | 2.7 h | |
| 190 | Heart River AT Heart Butte DamGLUN8 | 92.1 | Gauge | Grant | 99.4% | 167 of 168 | 27 min | 2 h | |
| 191 | Creel Bay AT Devils LakeDCBN8 | 92.1 | Gauge | Ramsey | 97.6% | 164 of 168 | 37 min | 3 h | |
| 192 | Cando - Mauvais CouleeMAVN8 | 91.9 | Gauge | Towner | 100% | 168 of 168 | 42 min | 60 min | |
| 193 | Edmore Coulee Trib AT Edmore Coulee near WebsterECTN8 | 91.9 | Gauge | Ramsey | 97.0% | 163 of 168 | 37 min | 3 h | |
| 194 | Carrington46D | 91.9 | Airport | Foster | 88.4% | 446 of 504 | 6 min | 2.7 h | |
| 195 | Cavalier2C8 | 91.7 | Airport | Pembina | 89.2% | 450 of 504 | 6 min | 2.7 h | |
| 196 | WahpetonBWP | 91.6 | Airport | Richland | 89.6% | 452 of 504 | 6 min | 2.7 h | |
| 197 | WatfordS25 | 91.5 | Airport | Mckenzie | 89.2% | 450 of 504 | 6 min | 2.7 h | |
| 198 | Oakes2D5 | 91.4 | Airport | Dickey | 89.2% | 450 of 504 | 6 min | 2.7 h | |
| 199 | Walhalla96D | 91.4 | Airport | Pembina | 88.4% | 446 of 504 | 6 min | 2.7 h | |
| 200 | Beach Beach20U | 91.3 | Airport | Golden Valley | 89.6% | 452 of 504 | 6 min | 2.7 h | |
| 201 | GwinnerGWR | 91.3 | Airport | Sargent | 89.0% | 449 of 504 | 6 min | 2.7 h | |
| 202 | MOTMOT | 91.3 | DCP | - | 85.7% | 6 of 7 | 6.6 h | 24 h | |
| 203 | Jamestown 38 WSW54937 | 91.0 | Reference | Kidder | 100% | 84 of 84 | 1.5 h | 3.1 h | |
| 204 | Medora 7 E94080 | 91.0 | Reference | Billings | 100% | 84 of 84 | 1.5 h | 3.1 h | |
| 205 | Rolla06D | 91.0 | Airport | Rolette | 89.0% | 449 of 504 | 6 min | 2.7 h | |
| 206 | Burnt Creek 7NW AT BismarckBBCN8 | 90.7 | Gauge | Burleigh | 95.2% | 160 of 168 | 37 min | 3.5 h | |
| 207 | East Fork Shell Creek Near ParshallPHLN8 | 90.6 | Gauge | Mountrail | 90.4% | 152 of 168 | 32 min | 3 h | |
| 208 | Northgate 5 ESE94084 | 90.5 | Reference | Burke | 98.8% | 83 of 84 | 1.5 h | 3.1 h | |
| 209 | Deepwater Creek Near RaubRABN8 | 90.5 | Gauge | Mclean | 92.8% | 156 of 168 | 32 min | 4 h | |
| 210 | Mandan 5 SouthND-MT-16 | 90.5 | Volunteer | Morton | 85.7% | 6 of 7 | 8.4 h | 36.1 h | |
| 211 | Williston BasinXWA | 90.4 | Airport | Williams | 91.9% | 171 of 186 | 10 min | 62 min | |
| 212 | TiogaD60 | 90.4 | Airport | Williams | 89.0% | 449 of 504 | 6 min | 2.7 h | |
| 213 | BOTN8BOTN8 | 90.3 | DCP | - | 85.7% | 6 of 7 | 8.7 h | 47.4 h | |
| 214 | Baldhill Creek AT DazeyDBCN8 | 89.8 | Gauge | Barnes | 85.2% | 191 of 224 | 27 min | 64 min | |
| 215 | South Branch Of Beaver Creek Near ZeelandZEEN8 | 89.7 | Gauge | Mcintosh | 91.1% | 155 of 170 | 37 min | 3 h | |
| 216 | Cando9D7 | 89.7 | Airport | Towner | 84.5% | 426 of 504 | 6 min | 2.7 h | |
| 217 | Killdeer9Y1 | 89.6 | Airport | Dunn | 87.9% | 443 of 504 | 6 min | 2.7 h | |
| 218 | Sheyenne River AT LisbonLBNN8 | 89.6 | Gauge | Ransom | 87.5% | 196 of 224 | 32 min | 79 min | |
| 219 | Burlington 0.3 NND-WR-12 | 89.5 | Volunteer | Ward | 85.7% | 6 of 7 | 10.4 h | 24 h | |
| 220 | Sheyenne River 2 SE KindredKNDN8 | 89.3 | Gauge | Cass | 83.9% | 188 of 224 | 27 min | 2 h | |
| 221 | Juliet1JN | 89.2 | Airport | Ward | 72.2% | 208 of 288 | 13 min | 64 min | |
| 222 | Glen UllinD57 | 89.1 | Airport | Morton | 88.2% | 445 of 504 | 6 min | 2.7 h | |
| 223 | Bismarck WFOBRKN8 | 89.1 | Cooperative | Burleigh | 73.9% | 17 of 23 | 25 min | 17 h | |
| 224 | Sheyenne River AT Below Baldhill DamBHTN8 | 88.7 | Gauge | Barnes | 82.1% | 184 of 224 | 27 min | 64 min | |
| 225 | Watford CityWCYN8 | 88.3 | Gauge | Mckenzie | 100% | 168 of 168 | 18 min | 75 min | |
| 226 | Sweet Briar 2 NE JudsonSWTN8 | 88.2 | Gauge | Morton | 92.2% | 155 of 168 | 47 min | 3 h | |
| 227 | Exp StationHETN8 | 88.2 | Cooperative | Adams | 71.4% | 5 of 7 | 23 min | 3 days | |
| 228 | South Heart 4.9 WNWND-SK-3 | 88.2 | Volunteer | Stark | 71.4% | 5 of 7 | 26 min | 25 h | |
| 229 | Tolley 6.4 NND-RV-4 | 88.2 | Volunteer | Renville | 71.4% | 5 of 7 | 85 min | 2 days | |
| 230 | Dunseith 7.4 NND-RL-7 | 88.2 | Volunteer | Rolette | 71.4% | 5 of 7 | 86 min | 2.5 days | |
| 231 | Oslo 2.7 WNWND-WH-2 | 88.2 | Volunteer | Walsh | 71.4% | 5 of 7 | 2.4 h | 24 h | |
| 232 | Moffit 3 SE [CCOOP]MFTN8 | 88.0 | Gauge | Burleigh | 77.1% | 778 of 1,008 | 15 min | 45 min | |
| 233 | Lima1LN | 88.0 | Airport | Burke | 72.2% | 208 of 288 | 14 min | 62 min | |
| 234 | GFKGFK | 87.8 | DCP | - | 70.0% | 7 of 10 | 19 min | 25 h | |
| 235 | Souris River 15W AT SherwoodSHWN8 | 87.7 | Gauge | Renville | 85.2% | 191 of 224 | 37 min | 1.8 h | |
| 236 | HazeltonHZTN8 | 87.7 | Cooperative | Emmons | 71.4% | 5 of 7 | 3.6 h | 2 days | |
| 237 | Little Missouri River AT MedoraMDAN8 | 87.5 | Gauge | Billings | 92.8% | 156 of 168 | 47 min | 4 h | |
| 238 | Carrington 0.3 WND-FS-9 | 87.3 | Volunteer | Foster | 71.4% | 5 of 7 | 4.4 h | 25 h | |
| 239 | Bismarck - Hay CreekHCKN8 | 87.1 | Gauge | Burleigh | 91.6% | 154 of 168 | 47 min | 4 h | |
| 240 | MaxMAXN8 | 87.0 | Cooperative | Mclean | 71.4% | 5 of 7 | 5.1 h | 2 days | |
| 241 | HettingerHEI | 86.9 | Airport | Adams | 98.8% | 166 of 168 | 8 min | 2 h | |
| 242 | LisbonLISN8 | 86.9 | Cooperative | Ransom | 71.4% | 5 of 7 | - | 3 days | |
| 243 | Kenmare 7SE - Des Lacs RiverKMRN8 | 86.3 | Gauge | Ward | 83.9% | 141 of 168 | 42 min | 3 h | |
| 244 | Fargo 3SFDRN8 | 86.1 | Cooperative | Cass | 71.4% | 5 of 7 | 7.1 h | 43.1 h | |
| 245 | Jamestown 0.8 WSWND-SM-15 | 85.9 | Volunteer | Stutsman | 71.4% | 5 of 7 | 7.4 h | 2 days | |
| 246 | CrosbyD50 | 85.8 | Airport | Divide | 89.6% | 452 of 504 | 6 min | 2.7 h | |
| 247 | Deep River 6 AT UphamUPHN8 | 85.1 | Gauge | Bottineau | 93.4% | 157 of 168 | 87 min | 4 h | |
| 248 | White Earth Lake Near White Earth06331885 | 85.0 | Gauge | Mountrail | 85.7% | 144 of 168 | 23 min | 18 h | |
| 249 | Grand_Forks_AFBRDR | 84.7 | Airport | Grand Forks | 65.1% | 219 of 336 | 16 min | 60 min | |
| 250 | MandamY19 | 84.4 | Airport | Morton | 78.3% | 395 of 504 | 6 min | 8.7 h |
How a station is ranked
The 247 Rank answers one question about a weather station: can its readings be relied on? A station has to deliver: its reports arrive when due, soon, without long silences. And its readings have to be right: close to a trusted station nearby, passing their checks, and in step with the weather the forecast and its neighbours confirm.
The 247 score
Storm Station's poller asks every network on its own schedule, around the clock, and keeps the time of every report it hears; the reference comparison and the forecast engine keep the rest. From the last seven days of that record each station is scored out of 100 on six parts, and its 247 score is their weighted mean:
- Reports receivedweight 35The share of its scheduled reports received. A station that sends every 5 minutes is due 2,016 reports in a week; one that reports once a day is due 7. Each report is counted in a slot centred on the station's own report time, so a report a minute early or late is still on time, and the week ends an hour back, so a report still on its way is never counted missed.Full marks: 100% received. No marks: none received.
- Arrivalweight 10The median time its reports took to arrive from the moment a reading was taken to the moment it reached Storm Station.Full marks: within 10 minutes, or a tenth of its schedule for a station that reports less often. No marks: an hour, or its whole schedule.
- Continuityweight 10Its longest silence against its own schedule, so a daily gauge is not marked down for a day between reports.Full marks: a silence of 3 reports or less. No marks: 72 reports, falling evenly on a log scale between.
- Accuracyweight 20How closely its temperature follows its reference station the nearest airport or climate reference station that reported within half an hour, up to 15 miles away, reading by reading; an airfield is compared with the nearest other airport, never its own report. A steady offset is taken out, and where both heights are known only the offset beyond 3 F that the height difference does not explain is counted.Full marks: within 1.5 F, allowing 0.1 F more for each mile to the reference. No marks: 6.5 F beyond that.
- Instrument checksweight 15The share of its readings that pass a check. For an airfield, the check the forecast engine runs the next day: each reading against the stations around it, as weather services check their own. For any other station, a reading 20 F or more from its reference fails, unless the two stand 3,000 ft or more apart.Full marks: none failed. No marks: 5% failed.
- Forecast checkweight 10How closely its temperature matched Storm Station's forecast for the same hours, checked the next day, for every airfield the forecast engine scores. A station whose readings stray far from a forecast its neighbours confirm is one to doubt.Full marks: within 2 F on average. No marks: 8 F.
A part is scored once the week holds 24 readings or comparisons for it. A part that cannot be measured where a station stands counts at the middle of its state's measured stations, so the station is neither lifted nor sunk by it. A part measured nowhere in the state is left out, and the others carry its weight.
From score to rank
Each state's stations are ranked by their score, to the tenth. At an equal score the longer record comes first: a station that sent 2,016 of 2,016 reports has shown more than one that sent 7 of 7. Then the faster arrival, then the shorter silence. Ties on all of them share a rank, as a race is scored: three stations tied for third are all third, and the next is sixth.
A station is ranked once its week holds enough reports to measure: 12, or 3 days for a gauge that reports once a day. The rank is made again every day, so a station that falls silent or starts to read wrong drops, and one that recovers climbs back. Every page shows the same ranking: a station's rank here, in its state's list and on its own page come from one run, and a new run reaches them together. Each station's page shows its score part by part, with the figures behind each.
The same figures as data
/api/ranks for a state and /api/rank for one station, its score in parts; the developer page has every field.