Storm Station
Sign in

Live/247 Rank/North Dakota

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.

312 stations ranked39.4% sent every report dueranked October 16, 2026page 1 of 2North Dakota instrumentsNorth Dakota weather

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

1stLast
Each rank wears its colour: first in its state in bright green, last in deep red, and every rank between mixed along the band.

How they reported this week

0316292123under 10%: 1 stations1010 to 19%: 1 stations11020 to 29%: 2 stations22030 to 39%: 2 stations23040 to 49%: 13 stations134050 to 59%: 21 stations215060 to 69%: 4 stations46070 to 79%: 26 stations267080 to 89%: 46 stations468090 to 99%: 73 stations7390every report: 123 stations123100Share of scheduled reports received in the week, per cent

The days behind it

7 days30 days90 days

078156234312October 10, 2026, every report: 98October 10, 2026, 90 to 99%: 114October 10, 2026, under 90%: 82October 11, 2026, every report: 97October 11, 2026, 90 to 99%: 112October 11, 2026, under 90%: 83October 12, 2026, every report: 102October 12, 2026, 90 to 99%: 85October 12, 2026, under 90%: 108October 13, 2026, every report: 109October 13, 2026, 90 to 99%: 83October 13, 2026, under 90%: 106October 14, 2026, every report: 111October 14, 2026, 90 to 99%: 78October 14, 2026, under 90%: 116October 15, 2026, every report: 120October 15, 2026, 90 to 99%: 82October 15, 2026, under 90%: 110October 16, 2026, every report: 123October 16, 2026, 90 to 99%: 73October 16, 2026, under 90%: 116October 10, 2026October 16, 2026

every report90 to 99%under 90%

Every station, ranked

RankStationScorePartsNetworkCountyReceivedReportsArrives inLongest silence
1Devils_LakeDVL99.7AirportRamsey100%168 of 1685 min74 min
2JamestownJMS98.7AirportStutsman100%168 of 1685 min60 min
3GarrisonN6098.7AirportMcLean100%168 of 1687 min60 min
4Minot_INTLMOT98.7AirportWard100%168 of 1687 min60 min
5FargoFAR98.3AirportCass100%168 of 1688 min60 min
6Velva 3 NEVLAN898.3CooperativeMchenry100%7 of 75 min24 h
7State HospitalJTWN898.3CooperativeStutsman100%7 of 715 min24 h
8Dunn CenterDNCN898.3CooperativeDunn100%7 of 715 min27 h
9BottineauBOTN898.3CooperativeBottineau100%7 of 716 min25.4 h
10Mc Leod 3 EMCLN898.3CooperativeRichland100%7 of 725 min25 h
11CavalierCVLN898.3CooperativePembina100%7 of 725 min24 h
11LansfordLFDN898.3CooperativeBottineau100%7 of 725 min24 h
13UnderwoodUNDN898.3CooperativeMclean100%7 of 725 min24 h
14Bottineau 6.4 ENEND-BT-1198.3VolunteerBottineau100%7 of 726 min24 h
15Larimore 0.4 SEND-GF-2398.3VolunteerGrand Forks100%7 of 726 min24 h
15Mayville 4.2 SSEND-TR-598.3VolunteerTraill100%7 of 726 min24 h
17Milnor 1.8 NNWND-RS-498.3VolunteerRansom100%7 of 726 min24 h
18Watford City 1.3 NNWND-MK-698.3VolunteerMcKenzie100%7 of 726 min24 h
19Pingree 5.4 NWND-SM-1498.3VolunteerStutsman100%7 of 726 min24 h
20Hazen 0.4 SWND-MR-298.3VolunteerMercer100%7 of 726 min24 h
21KilldeerKLLN898.3CooperativeDunn100%7 of 735 min24.3 h
22Minot 1.6 SSWND-WR-2098.3VolunteerWard100%7 of 785 min24 h
23Valley City 3.0 SEND-BR-998.3VolunteerBarnes100%7 of 786 min25 h
24Maxbass 4.9 ENEND-BT-898.3VolunteerBottineau100%7 of 786 min24 h
24West Fargo 2.1 SSWND-CS-7998.3VolunteerCass100%7 of 786 min24 h
26Killdeer 0.6 WNWND-DN-298.3VolunteerDunn100%7 of 786 min25 h
27Ellendale 7.3 NWND-DC-1398.3VolunteerDickey100%7 of 786 min24 h
28Fargo 4.3 SND-CS-2498.3VolunteerCass100%7 of 786 min24 h
29Dunn Center 1.8 WND-DN-2098.3VolunteerDunn100%7 of 786 min24 h
30Valley City 2.0 NWND-BR-298.3VolunteerBarnes100%7 of 786 min24 h
31Montpelier 3.3 ESEND-SM-1298.3VolunteerStutsman100%7 of 786 min24 h
32BowmanBOWN898.3CooperativeBowman100%7 of 71.6 h24 h
33DickinsonDIK98.2AirportStark100%168 of 1685 min69 min
34Grand_ForksGFK98.2AirportGrand Forks100%168 of 1688 min60 min
35Grandin 7.1 ENEND-TR-398.2VolunteerTraill100%7 of 72.4 h24 h
36Cavalier 7.9 WNWND-PM-198.2VolunteerPembina100%7 of 72.4 h24 h
36Dickinson 1.3 WNWND-SK-1298.2VolunteerStark100%7 of 72.4 h24 h
38Wahpeton 1.0 SSEND-RC-1498.2VolunteerRichland100%7 of 72.4 h24 h
39Monango 3.6 NWND-DC-798.2VolunteerDickey100%7 of 72.4 h24 h
40Grand Forks 3.9 NND-GF-2298.2VolunteerGrand Forks100%7 of 72.4 h24 h
41BismarckBIS98.0AirportBurleigh100%168 of 1689 min60 min
42VLAN8VLAN898.0DCP-100%7 of 72.9 h24 h
43Spring Creek AT ZapZAPN897.9GaugeMercer100%168 of 16812 min60 min
44Red River 2 NE DraytonDRTN897.9GaugePembina100%168 of 16812 min60 min
45Heart River 9 SSE JudsonJUDN897.9GaugeMorton100%168 of 16812 min60 min
45Missouri River 13 SE MandanMANN897.9GaugeMorton100%168 of 16812 min60 min
45Heart River 3W AT MandanMDNN897.9GaugeMorton100%168 of 16812 min60 min
45Missouri River 1 S PricePRCN897.9GaugeOliver100%168 of 16812 min60 min
45RiverSTNN897.9GaugeMercer100%168 of 16812 min60 min
45Missouri AT WashburnWSBN897.9GaugeOliver100%168 of 16812 min60 min
51Missouri River AT BismarckBIWN897.9GaugeBurleigh100%168 of 16812 min60 min
51James River AT LamoureLAMN897.9GaugeLa Moure100%168 of 16812 min60 min
53Fargo 6.3 SND-CS-7797.8VolunteerCass100%7 of 73.4 h24 h
54Garrison 2.1 SSWND-ML-797.8VolunteerMcLean100%7 of 73.4 h24 h
55Sheyenne River Near Warwick0505600097.7GaugeEddy100%168 of 16813 min64 min
55Baldhill Creek Near Dazey0505720097.7GaugeBarnes100%168 of 16813 min64 min
57Sheyenne River Near Cooperstown0505700097.7GaugeGriggs100%168 of 16813 min75 min
58Arrowwood 2AWWN897.7GaugeStutsman100%168 of 16813 min60 min
59Sheyenne River AT HarwoodHWDN897.6GaugeCass99.4%167 of 16812 min2 h
60Tatanka PrairieTTKN897.5GaugeSioux98.8%166 of 16812 min2 h
61Des Lacs River AT FoxholmDESN897.5GaugeWard98.8%166 of 16812 min2 h
62Minot 4NWMINN897.2GaugeWard98.2%165 of 16812 min2 h
62Souris River 3 AT VerendryeVRNN897.2GaugeMchenry98.2%165 of 16812 min2 h
62Westhope 6NNEWTHN897.2GaugeBottineau98.2%165 of 16812 min2 h
65Newborg 5NNENBGN897.2GaugeBottineau98.2%165 of 16812 min2 h
66Spirit Lake Casino On Devils LakeFRTN897.1GaugeBenson100%168 of 16816 min73 min
67Belcourt - Turtle Mountain RAWSTMTN897.1GaugeRolette99.4%167 of 16815 min2 h
68Medora 7EMRAN896.9GaugeBillings100%168 of 16817 min60 min
68Red River AT PembinaPBNN896.9GaugePembina100%168 of 16817 min60 min
68Starkweather Coulee 4NW AT WebsterWEBN896.9GaugeRamsey100%168 of 16817 min60 min
71Beaver Creek 1 W LintonBVRN896.9GaugeEmmons100%168 of 16817 min64 min
71Maple River 1 E EnderlinENDN896.9GaugeRansom100%168 of 16817 min64 min
71S Br Park River AT Homme DamHOMN896.9GaugeWalsh100%168 of 16817 min64 min
74Sheyenne River AT CooperstownCPRN896.9GaugeGriggs100%168 of 16817 min64 min
74Sheyenne River 3S AT WarwickWRWN896.9GaugeEddy100%168 of 16817 min64 min
76Heart River 10 S RichardtonRICN896.9GaugeStark100%168 of 16817 min64 min
77Mauvais Coulee Trib #3 AT Mauvias Coulee Trib #3 near CandoMCTN896.9GaugeTowner100%168 of 16817 min75 min
77Red River AT WahpetonWHNN896.9GaugeRichland100%168 of 16817 min75 min
79Sheyenne National GrasslandsSNGN896.7GaugeRansom100%168 of 16818 min75 min
80James River At Lamoure0647050096.7GaugeLaMoure100%168 of 16818 min60 min
81Rock Lake near Glenora MBRLGQ396.7GaugeTowner99.4%167 of 16817 min2 h
82Nd Jamestown 38 WSWJTNN896.7GaugeKidder99.4%167 of 16817 min1.5 h
83RAWS Site-Nr Sand CRKAMDN896.7GaugeSlope99.4%167 of 16817 min2 h
84Nd Northgate 5 ESENGTN896.6GaugeBurke99.4%167 of 16817 min2 h
85Minot_AFBMIB96.6AirportWard98.8%168 of 17016 min80 min
86Crosby Automated Weather Station.CSBN896.5GaugeDivide100%168 of 16819 min68 min
87Hampden RAWSHMDN896.5GaugeRamsey100%168 of 16819 min66 min
88Mandan #1 ScanMNDN896.5GaugeMorton98.8%166 of 168-2 h
89Westhope 0.1 NND-BT-996.4VolunteerBottineau100%7 of 76.4 h30 h
90Edgeley 5.2 NWND-LM-396.4VolunteerLaMoure100%7 of 76.4 h24 h
91Mandan #1S202096.4SoilMorton98.8%166 of 168-2 h
92Sheyenne River AT Flora above Devils Lake outletFLRN896.4GaugeBenson95.8%161 of 16812 min2 h
93Lake Ilo NWRLKIN896.3GaugeDunn98.2%165 of 16817 min2 h
94J. Clark SalyerJCSN896.2GaugeMchenry99.4%167 of 16819 min2 h
95Willow Creek 7 AT Willow CityWLCN896.2GaugeMchenry98.2%165 of 16817 min2 h
95Williston - Missouri River No9WLRN896.2GaugeWilliams98.2%165 of 16817 min2 h
97Souris River 7 AT WesthopeWSTN896.2GaugeBottineau98.2%165 of 16817 min2 h
98Dry Lake AT Dry Lake near PennDLCN896.0GaugeRamsey100%168 of 16821 min60 min
99Yellowstone River 2 W CartwrightCTWN896.0GaugeMckenzie100%168 of 16822 min60 min
99Fort Ransom State Park - Sheyenne RiverFRSN896.0GaugeRansom100%168 of 16822 min60 min
99James River 3 W Grace CityGCEN896.0GaugeFoster100%168 of 16822 min60 min
99Cedar Creek 13 N HaynesHCCN896.0GaugeAdams100%168 of 16822 min60 min
99Sheyenne River AT Horace above W.F. DiversionHRCN896.0GaugeCass100%168 of 16822 min60 min
99JamestownJMSN896.0GaugeStutsman100%168 of 16822 min60 min
99James River 8NNW AT KensalKSLN896.0GaugeFoster100%168 of 16822 min60 min
99Pipestem Creek 3W AT PingreePGEN896.0GaugeStutsman100%168 of 16822 min60 min
107LostwoodLWDN895.9GaugeBurke100%168 of 16818 min67 min
108Goose River AT HillsboroHGRN895.9GaugeTraill100%168 of 16822 min60 min
108Little Coulee AT Little Coulee near LeedsLEDN895.9GaugeBenson100%168 of 16822 min60 min
108Little Pembina River AT Little Pembina RiverLPRN895.9GaugeCavalier100%168 of 16822 min60 min
108Turtle River 1NW AT ArvillaLTRN895.9GaugeGrand Forks100%168 of 16822 min60 min
108Maple River 3 SW MapletonMPLN895.9GaugeCass100%168 of 16822 min60 min
108Red River 8 E Thompson BridgeTPNN895.9GaugeGrand Forks100%168 of 16822 min60 min
108Sheyenne River AT West Fargo DiversionWFON895.9GaugeCass100%168 of 16822 min60 min
115Minot Broadway BridgeMION895.9GaugeWard100%168 of 16822 min79 min
115Pembina River AT NecheNCEN895.9GaugePembina100%168 of 16822 min79 min
115Sheyenne River AT Valley CityVCRN895.9GaugeBarnes100%168 of 16822 min79 min
118Red River AT FargoFGON895.9GaugeCass100%168 of 16822 min60 min
118MintoMTON895.9GaugeWalsh100%168 of 16822 min60 min
120Bear Creek 6 NNE OakesBCKN895.9GaugeDickey100%168 of 16822 min79 min
121Beaver Creek 13 SSW TrottersTRTN895.7GaugeGolden Valley99.4%167 of 16822 min2 h
122Big Coulee AT Churchs Ferry Big CouleeCFCN895.7GaugeRamsey99.4%167 of 16822 min2 h
122Forest River 3SE AT FordvilleFDVN895.7GaugeWalsh99.4%167 of 16822 min2 h
122James River AT Jamestown DamJMDN895.7GaugeStutsman99.4%167 of 16822 min2 h
122Cannonball River 16 S RaleighRLHN895.7GaugeGrant99.4%167 of 16822 min2 h
126Sheyenne River AT Sheyenne River at Gol BridgeGOLN895.7GaugeRichland99.4%167 of 16822 min2 h
126Red River 1 SE HicksonHICN895.7GaugeCass99.4%167 of 16822 min2 h
128Knife River 9S AT Golden ValleyGDVN895.5GaugeMercer98.8%166 of 16822 min2 h
129Square Butte Creek 6SE AT CenterCETN895.4GaugeOliver98.8%166 of 16822 min2 h
130Bowman Haley DamBWNN895.3GaugeBowman98.2%165 of 16822 min2 h
131Cannonball River AT RegentREGN895.2GaugeHettinger98.2%220 of 22422 min64 min
132Goose River 5 NW Portland 5 NWPRTN895.2GaugeTraill98.2%165 of 16822 min2 h
133Park River AT GraftonGRNN894.9GaugeWalsh100%168 of 16827 min60 min
133Sheyenne River 5 S Sheyenne R abv Harvey NDHVYN894.9GaugeWells100%168 of 16827 min60 min
133Bear Den Creek 6NW AT MandareeMREN894.9GaugeMckenzie100%168 of 16827 min60 min
136Upham 4NUHMN894.9GaugeMcHenry100%168 of 16827 min64 min
137Tongue River 1 W AkraAKRN894.9GaugePembina100%168 of 16827 min64 min
137Bantry 7N - Pool 320BNYN894.9GaugeMcHenry100%168 of 16827 min64 min
137Foxholm 3EFXHN894.9GaugeWard100%168 of 16827 min64 min
137Horace - Sheyenne RIverHORN894.9GaugeCass100%168 of 16827 min64 min
137Kramer 4WSWKAMN894.9GaugeBottineau100%168 of 16827 min64 min
137Maple River 1 N Mapleton (North of I-94)MAPN894.9GaugeCass100%168 of 16827 min64 min
137Velva - Bonnes CouleeVELN894.9GaugeMcHenry100%168 of 16827 min64 min
144Knife River AT ManningMNGN894.9GaugeDunn100%168 of 16827 min64 min
145Cedar Creek 19S AT RaleighRLGN894.9GaugeGrant100%168 of 16827 min64 min
146Sheyenne River AT Bremen below Devils Lake OutletBRMN894.9GaugeEddy100%168 of 16827 min64 min
146Kloten - Sheyenne RiverMVCN894.9GaugeNelson100%168 of 16827 min64 min
146Wild Rice River at Wild RiceSTBN894.9GaugeCass100%168 of 16827 min64 min
146Sheyenne River AT West FargoWSFN894.9GaugeCass100%168 of 16827 min64 min
150Bone Lake Outlet near Ninette MBBLNQ394.8GaugeRolette96.4%162 of 16821 min2 h
151Red River AT HalstadHILN894.7GaugeTraill99.4%167 of 16827 min2 h
152Red River of the North 3 N EnloENLN894.7GaugeRichland99.4%167 of 16827 min2 h
153Grand Forks Univ (NWS)GRFN894.5CooperativeGrand Forks89.2%25 of 2823 min12.3 h
154Heart River AT Dickinson DamDNDN894.3GaugeStark98.2%165 of 16827 min2 h
155Souris River 8 AT BantryBANN894.3GaugeMchenry98.2%165 of 16827 min2 h
155Green River 8 W New HradecHRAN894.3GaugeBillings98.2%165 of 16827 min2 h
155Wintering River 5 AT KarlsruheKLSN894.3GaugeMchenry98.2%165 of 16827 min2 h
155Long Creek 7 NNW NoonanNOON894.3GaugeDivide98.2%165 of 16827 min2 h
155Heart River 16 S HebronTCHN894.3GaugeGrant98.2%165 of 16827 min2 h
160Pipestem Creek AT Pipestem DamJAMN894.3GaugeStutsman95.2%160 of 16822 min2 h
161Little Missouri River 14S AT Watford CityWTFN894.2GaugeMckenzie98.2%330 of 33627 min60 min
162E. Br. Short Creek 6 AT ColumbusCLBN894.2GaugeBurke98.2%165 of 16827 min3 h
163Mauvais Coulee 6SE AT CandoCNDN894.0GaugeTowner100%168 of 16831 min60 min
164Edmore Coulee AT EdmoreEDEN893.9GaugeRamsey100%168 of 16832 min60 min
165Souris River 3 AT FoxholmFOXN893.9GaugeWard97.0%163 of 16827 min3 h
166Lake Darling Near Foxholm0511550093.7GaugeWard100%168 of 16833 min64 min
167CooperstownCPPN893.6GaugeGriggs98.2%165 of 16830 min2 h
168Sheyenne River AT Baldhill Dam at Lake AshtabulaBLDN893.3GaugeBarnes95.5%214 of 22427 min64 min
169Missouri River 5SW AT WillistonWLTN893.2GaugeWilliams98.2%220 of 22432 min64 min
170Apple Creek 6W AT MenokenMENN893.2GaugeBurleigh97.6%164 of 16831 min2 h
171Site 1-3MI.NPBAN893.2CooperativePembina85.7%6 of 725 min37.1 h
172NapoleonNPLN893.2CooperativeLogan85.7%6 of 755 min24 h
173Cooperstown 0.4 WNWND-GG-393.2VolunteerGriggs85.7%6 of 786 min37.1 h
174Minot 1.5 SSWND-WR-493.2VolunteerWard85.7%6 of 786 min25 h
175Beach 0.3 SSEND-GV-193.2VolunteerGolden Valley85.7%6 of 72.4 h2 days
176Durbin 5.4 WNWND-CS-3293.2VolunteerCass85.7%6 of 72.4 h2 days
177Jamestown 0.5 END-SM-2293.2VolunteerStutsman85.7%6 of 72.4 h24 h
178Antelope Creek 9 NW CarsonCRSN892.8GaugeGrant98.2%165 of 16834 min3 h
179MayvilleMYVN892.8CooperativeTraill85.7%6 of 73.4 h24 h
180Knife River Near BeulahKRBN892.6GaugeMercer98.2%165 of 16835 min3 h
181South Heart 2E - Heart RiverSRHN892.4GaugeStark97.6%164 of 16835 min3 h
182Mandan - Missouri RiverMMRN892.3GaugeMorton98.2%165 of 16837 min3 h
183Big Muddy CrkALTN892.3GaugeMorton98.2%165 of 16837 min3 h
183Little Missouri AT MarmarthMTHN892.3GaugeSlope98.2%165 of 16837 min3 h
185Harvey5H492.3AirportWells89.2%450 of 5046 min2.7 h
186BowmanBWW92.3AirportBowman88.8%448 of 5046 min2.7 h
187BottineauD0992.2AirportBottineau99.6%502 of 5046 min40 min
188Knife River 1S AT HazenHZNN892.2GaugeMercer98.2%165 of 16837 min3 h
189RandsS3292.2AirportGriggs88.8%448 of 5046 min2.7 h
190Heart River AT Heart Butte DamGLUN892.1GaugeGrant99.4%167 of 16827 min2 h
191Creel Bay AT Devils LakeDCBN892.1GaugeRamsey97.6%164 of 16837 min3 h
192Cando - Mauvais CouleeMAVN891.9GaugeTowner100%168 of 16842 min60 min
193Edmore Coulee Trib AT Edmore Coulee near WebsterECTN891.9GaugeRamsey97.0%163 of 16837 min3 h
194Carrington46D91.9AirportFoster88.4%446 of 5046 min2.7 h
195Cavalier2C891.7AirportPembina89.2%450 of 5046 min2.7 h
196WahpetonBWP91.6AirportRichland89.6%452 of 5046 min2.7 h
197WatfordS2591.5AirportMckenzie89.2%450 of 5046 min2.7 h
198Oakes2D591.4AirportDickey89.2%450 of 5046 min2.7 h
199Walhalla96D91.4AirportPembina88.4%446 of 5046 min2.7 h
200Beach Beach20U91.3AirportGolden Valley89.6%452 of 5046 min2.7 h
201GwinnerGWR91.3AirportSargent89.0%449 of 5046 min2.7 h
202MOTMOT91.3DCP-85.7%6 of 76.6 h24 h
203Jamestown 38 WSW5493791.0ReferenceKidder100%84 of 841.5 h3.1 h
204Medora 7 E9408091.0ReferenceBillings100%84 of 841.5 h3.1 h
205Rolla06D91.0AirportRolette89.0%449 of 5046 min2.7 h
206Burnt Creek 7NW AT BismarckBBCN890.7GaugeBurleigh95.2%160 of 16837 min3.5 h
207East Fork Shell Creek Near ParshallPHLN890.6GaugeMountrail90.4%152 of 16832 min3 h
208Northgate 5 ESE9408490.5ReferenceBurke98.8%83 of 841.5 h3.1 h
209Deepwater Creek Near RaubRABN890.5GaugeMclean92.8%156 of 16832 min4 h
210Mandan 5 SouthND-MT-1690.5VolunteerMorton85.7%6 of 78.4 h36.1 h
211Williston BasinXWA90.4AirportWilliams91.9%171 of 18610 min62 min
212TiogaD6090.4AirportWilliams89.0%449 of 5046 min2.7 h
213BOTN8BOTN890.3DCP-85.7%6 of 78.7 h47.4 h
214Baldhill Creek AT DazeyDBCN889.8GaugeBarnes85.2%191 of 22427 min64 min
215South Branch Of Beaver Creek Near ZeelandZEEN889.7GaugeMcintosh91.1%155 of 17037 min3 h
216Cando9D789.7AirportTowner84.5%426 of 5046 min2.7 h
217Killdeer9Y189.6AirportDunn87.9%443 of 5046 min2.7 h
218Sheyenne River AT LisbonLBNN889.6GaugeRansom87.5%196 of 22432 min79 min
219Burlington 0.3 NND-WR-1289.5VolunteerWard85.7%6 of 710.4 h24 h
220Sheyenne River 2 SE KindredKNDN889.3GaugeCass83.9%188 of 22427 min2 h
221Juliet1JN89.2AirportWard72.2%208 of 28813 min64 min
222Glen UllinD5789.1AirportMorton88.2%445 of 5046 min2.7 h
223Bismarck WFOBRKN889.1CooperativeBurleigh73.9%17 of 2325 min17 h
224Sheyenne River AT Below Baldhill DamBHTN888.7GaugeBarnes82.1%184 of 22427 min64 min
225Watford CityWCYN888.3GaugeMckenzie100%168 of 16818 min75 min
226Sweet Briar 2 NE JudsonSWTN888.2GaugeMorton92.2%155 of 16847 min3 h
227Exp StationHETN888.2CooperativeAdams71.4%5 of 723 min3 days
228South Heart 4.9 WNWND-SK-388.2VolunteerStark71.4%5 of 726 min25 h
229Tolley 6.4 NND-RV-488.2VolunteerRenville71.4%5 of 785 min2 days
230Dunseith 7.4 NND-RL-788.2VolunteerRolette71.4%5 of 786 min2.5 days
231Oslo 2.7 WNWND-WH-288.2VolunteerWalsh71.4%5 of 72.4 h24 h
232Moffit 3 SE [CCOOP]MFTN888.0GaugeBurleigh77.1%778 of 1,00815 min45 min
233Lima1LN88.0AirportBurke72.2%208 of 28814 min62 min
234GFKGFK87.8DCP-70.0%7 of 1019 min25 h
235Souris River 15W AT SherwoodSHWN887.7GaugeRenville85.2%191 of 22437 min1.8 h
236HazeltonHZTN887.7CooperativeEmmons71.4%5 of 73.6 h2 days
237Little Missouri River AT MedoraMDAN887.5GaugeBillings92.8%156 of 16847 min4 h
238Carrington 0.3 WND-FS-987.3VolunteerFoster71.4%5 of 74.4 h25 h
239Bismarck - Hay CreekHCKN887.1GaugeBurleigh91.6%154 of 16847 min4 h
240MaxMAXN887.0CooperativeMclean71.4%5 of 75.1 h2 days
241HettingerHEI86.9AirportAdams98.8%166 of 1688 min2 h
242LisbonLISN886.9CooperativeRansom71.4%5 of 7-3 days
243Kenmare 7SE - Des Lacs RiverKMRN886.3GaugeWard83.9%141 of 16842 min3 h
244Fargo 3SFDRN886.1CooperativeCass71.4%5 of 77.1 h43.1 h
245Jamestown 0.8 WSWND-SM-1585.9VolunteerStutsman71.4%5 of 77.4 h2 days
246CrosbyD5085.8AirportDivide89.6%452 of 5046 min2.7 h
247Deep River 6 AT UphamUPHN885.1GaugeBottineau93.4%157 of 16887 min4 h
248White Earth Lake Near White Earth0633188585.0GaugeMountrail85.7%144 of 16823 min18 h
249Grand_Forks_AFBRDR84.7AirportGrand Forks65.1%219 of 33616 min60 min
250MandamY1984.4AirportMorton78.3%395 of 5046 min8.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:

  1. 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.
  2. 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.
  3. 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.
  4. 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.
  5. 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.
  6. 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.