Skip to content
All tools

How accurate is the forecast?

The National Weather Service misses the daily high by 2.26°F the same day and 4.38°F 6 days out · 389 towns · since Aug 15, 2026

Bella Vista, AR: median miss 2°F over 242 daysBentonville, AR: median miss 2°F over 239 daysCenterton, AR: median miss 2°F over 242 daysFayetteville, AR: median miss 3°F over 240 daysHarrison, AR: median miss 3°F over 241 daysLowell, AR: median miss 2°F over 242 daysMountain Home, AR: median miss 3°F over 240 daysRogers, AR: median miss 2°F over 241 daysSiloam Springs, AR: median miss 2°F over 265 daysSpringdale, AR: median miss 2°F over 243 daysChino Valley, AZ: median miss 2°F over 251 daysFlagstaff, AZ: median miss 2°F over 284 daysPayson, AZ: median miss 2°F over 283 daysPrescott, AZ: median miss 2°F over 254 daysPrescott Valley, AZ: median miss 2°F over 255 daysShow Low, AZ: median miss 2°F over 273 daysGrass Valley, CA: median miss 4°F over 237 daysSouth Lake Tahoe, CA: median miss 5°F over 263 daysSusanville, CA: median miss 3°F over 264 daysTruckee, CA: median miss 5°F over 263 daysArvada, CO: median miss 2°F over 256 daysAurora, CO: median miss 2°F over 263 daysColorado Springs, CO: median miss 3°F over 265 daysDenver, CO: median miss 2°F over 262 daysFort Collins, CO: median miss 4°F over 261 daysGreeley, CO: median miss 3°F over 253 daysLakewood, CO: median miss 3°F over 257 daysPueblo, CO: median miss 2°F over 261 daysThornton, CO: median miss 2.5°F over 258 daysWestminster, CO: median miss 2°F over 260 daysBridgeport, CT: median miss 2°F over 287 daysBristol, CT: median miss 3°F over 268 daysDanbury, CT: median miss 2°F over 291 daysHartford, CT: median miss 2°F over 295 daysMeriden, CT: median miss 2°F over 289 daysNew Britain, CT: median miss 2°F over 278 daysNew Haven, CT: median miss 2°F over 287 daysNorwalk, CT: median miss 3°F over 290 daysStamford, CT: median miss 3°F over 292 daysWaterbury, CT: median miss 3°F over 291 daysWashington, DC: median miss 2°F over 235 daysDover, DE: median miss 2°F over 265 daysMiddletown, DE: median miss 2°F over 262 daysMilford, DE: median miss 2°F over 263 daysNewark, DE: median miss 2°F over 262 daysSmyrna, DE: median miss 2°F over 263 daysWilmington, DE: median miss 2°F over 262 daysAmes, IA: median miss 2°F over 266 daysAnkeny, IA: median miss 2°F over 263 daysCedar Rapids, IA: median miss 3°F over 265 daysCouncil Bluffs, IA: median miss 3°F over 251 daysDavenport, IA: median miss 2°F over 264 daysDes Moines, IA: median miss 2°F over 261 daysIowa City, IA: median miss 2°F over 236 daysSioux City, IA: median miss 2°F over 237 daysWaterloo, IA: median miss 2°F over 256 daysWest Des Moines, IA: median miss 2°F over 262 daysBoise City, ID: median miss 2°F over 236 daysCaldwell, ID: median miss 3°F over 233 daysCoeur d'Alene, ID: median miss 3°F over 264 daysIdaho Falls, ID: median miss 3°F over 264 daysMeridian, ID: median miss 3°F over 258 daysNampa, ID: median miss 3°F over 236 daysPocatello, ID: median miss 4°F over 264 daysPost Falls, ID: median miss 2°F over 265 daysRexburg, ID: median miss 3°F over 264 daysTwin Falls, ID: median miss 2°F over 264 daysAurora, IL: median miss 2°F over 256 daysChampaign, IL: median miss 2°F over 262 daysChicago, IL: median miss 3°F over 263 daysElgin, IL: median miss 3°F over 250 daysJoliet, IL: median miss 3°F over 260 daysNaperville, IL: median miss 2°F over 257 daysPeoria, IL: median miss 2°F over 263 daysRockford, IL: median miss 2°F over 260 daysSpringfield, IL: median miss 3°F over 264 daysWaukegan, IL: median miss 2°F over 260 daysBloomington, IN: median miss 2°F over 262 daysCarmel, IN: median miss 2°F over 265 daysEvansville, IN: median miss 2°F over 176 daysFishers, IN: median miss 2°F over 264 daysFort Wayne, IN: median miss 2°F over 265 daysHammond, IN: median miss 3°F over 265 daysIndianapolis city (balance), IN: median miss 2°F over 267 daysLafayette, IN: median miss 3°F over 263 daysNoblesville, IN: median miss 2°F over 262 daysSouth Bend, IN: median miss 2°F over 266 daysKansas City, KS: median miss 3°F over 256 daysLawrence, KS: median miss 3°F over 253 daysLenexa, KS: median miss 3°F over 286 daysManhattan, KS: median miss 4°F over 283 daysOlathe, KS: median miss 3°F over 284 daysOverland Park, KS: median miss 3°F over 283 daysSalina, KS: median miss 3°F over 283 daysShawnee, KS: median miss 3°F over 281 daysTopeka, KS: median miss 3°F over 282 daysWichita, KS: median miss 3°F over 281 daysBowling Green, KY: median miss 2°F over 262 daysCovington, KY: median miss 2°F over 291 daysFlorence, KY: median miss 2°F over 291 daysGeorgetown, KY: median miss 2°F over 291 daysIndependence, KY: median miss 2°F over 289 daysJeffersontown, KY: median miss 2°F over 293 daysLexington-Fayette, KY: median miss 2°F over 290 daysLouisville/Jefferson County metro government (balance), KY: median miss 2°F over 290 daysNicholasville, KY: median miss 2°F over 261 daysBoston, MA: median miss 3°F over 270 daysBrockton, MA: median miss 2°F over 268 daysCambridge, MA: median miss 3°F over 267 daysFall River, MA: median miss 2°F over 269 daysLowell, MA: median miss 2°F over 268 daysLynn, MA: median miss 2°F over 261 daysNew Bedford, MA: median miss 2°F over 269 daysQuincy, MA: median miss 3°F over 269 daysSpringfield, MA: median miss 2°F over 268 daysWorcester, MA: median miss 3°F over 267 daysAnnapolis, MD: median miss 3°F over 262 daysBaltimore, MD: median miss 2°F over 267 daysBowie, MD: median miss 4°F over 111 daysCollege Park, MD: median miss 2°F over 262 daysFrederick, MD: median miss 2°F over 263 daysGaithersburg, MD: median miss 2°F over 264 daysGreenbelt, MD: median miss 2°F over 262 daysHagerstown, MD: median miss 3°F over 266 daysLaurel, MD: median miss 3°F over 110 daysSalisbury, MD: median miss 1°F over 231 daysAuburn, ME: median miss 2°F over 264 daysAugusta, ME: median miss 2°F over 257 daysBangor, ME: median miss 2°F over 264 daysBiddeford, ME: median miss 3°F over 263 daysLewiston, ME: median miss 2°F over 265 daysPortland, ME: median miss 6°F over 265 daysSaco, ME: median miss 3°F over 257 daysSanford, ME: median miss 2°F over 264 daysSouth Portland, ME: median miss 3°F over 263 daysWestbrook, ME: median miss 3°F over 264 daysAnn Arbor, MI: median miss 8°F over 35 daysDearborn, MI: median miss 2°F over 285 daysDetroit, MI: median miss 3°F over 290 daysFarmington Hills, MI: median miss 3°F over 292 daysGrand Rapids, MI: median miss 2°F over 290 daysLansing, MI: median miss 2°F over 288 daysLivonia, MI: median miss 2°F over 290 daysSterling Heights, MI: median miss 3°F over 285 daysTroy, MI: median miss 3°F over 287 daysWarren, MI: median miss 3°F over 290 daysBlaine, MN: median miss 2°F over 312 daysBloomington, MN: median miss 3°F over 308 daysBrooklyn Park, MN: median miss 3°F over 306 daysDuluth, MN: median miss 2°F over 309 daysLakeville, MN: median miss 3°F over 313 daysMinneapolis, MN: median miss 3°F over 312 daysPlymouth, MN: median miss 2°F over 310 daysRochester, MN: median miss 3°F over 307 daysSt. Paul, MN: median miss 3°F over 307 daysWoodbury, MN: median miss 3°F over 310 daysColumbia, MO: median miss 2°F over 264 daysIndependence, MO: median miss 3°F over 263 daysKansas City, MO: median miss 3°F over 235 daysLee's Summit, MO: median miss 3°F over 235 daysO'Fallon, MO: median miss 2°F over 264 daysSpringfield, MO: median miss 3°F over 262 daysSt. Charles, MO: median miss 2°F over 236 daysSt. Joseph, MO: median miss 3°F over 258 daysSt. Louis, MO: median miss 2°F over 262 daysSt. Peters, MO: median miss 2°F over 264 daysBelgrade, MT: median miss 2°F over 270 daysBillings, MT: median miss 2°F over 269 daysBozeman, MT: median miss 3°F over 262 daysButte-Silver Bow (balance), MT: median miss 4°F over 268 daysGreat Falls, MT: median miss 3°F over 270 daysHelena, MT: median miss 3°F over 264 daysKalispell, MT: median miss 3°F over 265 daysMissoula, MT: median miss 3°F over 265 daysAsheville, NC: median miss 1°F over 260 daysBoone, NC: median miss 2°F over 290 daysClemmons, NC: median miss 2°F over 264 daysGreensboro, NC: median miss 2°F over 264 daysHendersonville, NC: median miss 3°F over 262 daysKernersville, NC: median miss 2°F over 261 daysLewisville, NC: median miss 2°F over 263 daysReidsville, NC: median miss 2°F over 264 daysSummerfield, NC: median miss 2°F over 264 daysWinston-Salem, NC: median miss 2°F over 258 daysBismarck, ND: median miss 3°F over 258 daysDickinson, ND: median miss 3°F over 261 daysFargo, ND: median miss 3°F over 255 daysGrand Forks, ND: median miss 2°F over 261 daysJamestown, ND: median miss 2°F over 265 daysMandan, ND: median miss 3°F over 261 daysMinot, ND: median miss 3°F over 261 daysWest Fargo, ND: median miss 3°F over 256 daysWilliston, ND: median miss 3°F over 260 daysBellevue, NE: median miss 2°F over 263 daysColumbus, NE: median miss 2°F over 263 daysFremont, NE: median miss 3°F over 263 daysGrand Island, NE: median miss 3°F over 260 daysHastings, NE: median miss 3°F over 257 daysKearney, NE: median miss 3°F over 260 daysLincoln, NE: median miss 2°F over 263 daysNorfolk, NE: median miss 3°F over 260 daysOmaha, NE: median miss 3°F over 260 daysPapillion, NE: median miss 2°F over 265 daysClaremont, NH: median miss 2°F over 256 daysConcord, NH: median miss 2°F over 265 daysDover, NH: median miss 2°F over 264 daysKeene, NH: median miss 2°F over 256 daysLaconia, NH: median miss 2°F over 263 daysLebanon, NH: median miss 2°F over 264 daysManchester, NH: median miss 2.5°F over 262 daysNashua, NH: median miss 2°F over 265 daysPortsmouth, NH: median miss 3°F over 263 daysRochester, NH: median miss 2°F over 258 daysBayonne, NJ: median miss 3°F over 259 daysCamden, NJ: median miss 2°F over 189 daysClifton, NJ: median miss 2°F over 264 daysEast Orange, NJ: median miss 2°F over 264 daysElizabeth, NJ: median miss 2°F over 265 daysJersey City, NJ: median miss 2°F over 236 daysNewark, NJ: median miss 2°F over 263 daysPassaic, NJ: median miss 2°F over 258 daysPaterson, NJ: median miss 2°F over 264 daysTrenton, NJ: median miss 2°F over 262 daysAlbuquerque, NM: median miss 3.5°F over 234 daysClovis, NM: median miss 1°F over 262 daysEspañola, NM: median miss 9°F over 235 daysFarmington, NM: median miss 2°F over 235 daysGallup, NM: median miss 2°F over 262 daysLas Vegas, NM: median miss 2°F over 264 daysPortales, NM: median miss 1°F over 235 daysRio Rancho, NM: median miss 4°F over 235 daysRoswell, NM: median miss 2°F over 232 daysSanta Fe, NM: median miss 2°F over 262 daysCarson, NV: median miss 2°F over 265 daysElko, NV: median miss 2°F over 261 daysReno, NV: median miss 4°F over 264 daysSparks, NV: median miss 4°F over 236 daysAlbany, NY: median miss 2°F over 275 daysBuffalo, NY: median miss 2°F over 288 daysMount Vernon, NY: median miss 2°F over 279 daysNew Rochelle, NY: median miss 3°F over 282 daysNew York, NY: median miss 3°F over 284 daysRochester, NY: median miss 2°F over 282 daysSchenectady, NY: median miss 2°F over 280 daysSyracuse, NY: median miss 2°F over 281 daysUtica, NY: median miss 2°F over 277 daysYonkers, NY: median miss 2°F over 284 daysAkron, OH: median miss 3°F over 257 daysCanton, OH: median miss 2°F over 259 daysCincinnati, OH: median miss 2°F over 260 daysCleveland, OH: median miss 3°F over 259 daysColumbus, OH: median miss 2°F over 258 daysDayton, OH: median miss 3°F over 256 daysHamilton, OH: median miss 2°F over 237 daysLorain, OH: median miss 2°F over 257 daysParma, OH: median miss 2°F over 251 daysToledo, OH: median miss 2°F over 259 daysBartlesville, OK: median miss 2°F over 236 daysBroken Arrow, OK: median miss 3°F over 232 daysEnid, OK: median miss 3°F over 230 daysJenks, OK: median miss 3°F over 237 daysMoore, OK: median miss 2°F over 235 daysOklahoma City, OK: median miss 2°F over 239 daysOwasso, OK: median miss 2°F over 235 daysShawnee, OK: median miss 4°F over 237 daysStillwater, OK: median miss 2°F over 237 daysTulsa, OK: median miss 2°F over 237 daysBend, OR: median miss 4°F over 254 daysDallas, OR: median miss 3°F over 234 daysKlamath Falls, OR: median miss 2°F over 255 daysLa Grande, OR: median miss 3°F over 237 daysMcMinnville, OR: median miss 3°F over 249 daysMonmouth, OR: median miss 3°F over 235 daysOntario, OR: median miss 3°F over 256 daysPendleton, OR: median miss 2°F over 250 daysPrineville, OR: median miss 2°F over 235 daysRedmond, OR: median miss 2°F over 236 daysAllentown, PA: median miss 2°F over 250 daysBethlehem, PA: median miss 2°F over 240 daysErie, PA: median miss 2°F over 252 daysHarrisburg, PA: median miss 2°F over 247 daysLancaster, PA: median miss 4°F over 247 daysPhiladelphia, PA: median miss 2°F over 253 daysPittsburgh, PA: median miss 4°F over 253 daysReading, PA: median miss 2°F over 249 daysScranton, PA: median miss 2°F over 244 daysYork, PA: median miss 4°F over 246 daysCentral Falls, RI: median miss 2°F over 232 daysCranston, RI: median miss 3°F over 248 daysEast Providence, RI: median miss 2°F over 244 daysPawtucket, RI: median miss 2°F over 233 daysProvidence, RI: median miss 2°F over 250 daysWarwick, RI: median miss 3°F over 244 daysWoonsocket, RI: median miss 2°F over 232 daysAberdeen, SD: median miss 3°F over 243 daysBox Elder, SD: median miss 3°F over 238 daysBrookings, SD: median miss 3°F over 240 daysHuron, SD: median miss 2°F over 239 daysMitchell, SD: median miss 3°F over 244 daysRapid City, SD: median miss 3°F over 235 daysSioux Falls, SD: median miss 3°F over 242 daysSpearfish, SD: median miss 3°F over 239 daysWatertown, SD: median miss 2°F over 242 daysYankton, SD: median miss 2°F over 240 daysBristol, TN: median miss 2°F over 257 daysCookeville, TN: median miss 2°F over 251 daysCrossville, TN: median miss 1°F over 257 daysElizabethton, TN: median miss 2°F over 255 daysGreeneville, TN: median miss 2°F over 257 daysJohnson City, TN: median miss 2°F over 256 daysMorristown, TN: median miss 2°F over 231 daysAmarillo, TX: median miss 2°F over 237 daysBorger, TX: median miss 3°F over 229 daysCanyon, TX: median miss 2°F over 235 daysDumas, TX: median miss 2°F over 233 daysHereford, TX: median miss 2°F over 234 daysLevelland, TX: median miss 2°F over 236 daysLubbock, TX: median miss 2°F over 235 daysPampa, TX: median miss 2°F over 235 daysPlainview, TX: median miss 2°F over 233 daysLayton, UT: median miss 2°F over 234 daysLehi, UT: median miss 3°F over 235 daysOgden, UT: median miss 3°F over 234 daysOrem, UT: median miss 2°F over 234 daysProvo, UT: median miss 2°F over 235 daysSalt Lake City, UT: median miss 2°F over 235 daysSandy, UT: median miss 2°F over 235 daysSouth Jordan, UT: median miss 3°F over 235 daysWest Jordan, UT: median miss 2°F over 234 daysWest Valley City, UT: median miss 2°F over 236 daysAlexandria, VA: median miss 2°F over 238 daysBlacksburg, VA: median miss 2°F over 239 daysCharlottesville, VA: median miss 2°F over 235 daysChesapeake, VA: median miss 2°F over 238 daysHarrisonburg, VA: median miss 2°F over 236 daysLeesburg, VA: median miss 2°F over 236 daysLynchburg, VA: median miss 2°F over 230 daysManassas, VA: median miss 2°F over 238 daysRichmond, VA: median miss 1°F over 239 daysRoanoke, VA: median miss 2°F over 230 daysBurlington, VT: median miss 2°F over 237 daysEssex Junction, VT: median miss 2°F over 234 daysRutland, VT: median miss 3°F over 235 daysSouth Burlington, VT: median miss 2°F over 235 daysAuburn, WA: median miss 2°F over 275 daysBurien, WA: median miss 2°F over 275 daysFederal Way, WA: median miss 2°F over 271 daysKent, WA: median miss 2°F over 276 daysRenton, WA: median miss 2°F over 280 daysSeaTac, WA: median miss 2°F over 276 daysSpokane, WA: median miss 2°F over 276 daysSpokane Valley, WA: median miss 2°F over 278 daysWenatchee, WA: median miss 2°F over 277 daysYakima, WA: median miss 3°F over 272 daysAppleton, WI: median miss 2°F over 232 daysEau Claire, WI: median miss 2°F over 236 daysGreen Bay, WI: median miss 2°F over 231 daysJanesville, WI: median miss 2°F over 235 daysKenosha, WI: median miss 2°F over 234 daysMadison, WI: median miss 2°F over 234 daysMilwaukee, WI: median miss 4°F over 237 daysOshkosh, WI: median miss 2°F over 233 daysRacine, WI: median miss 3°F over 142 daysWaukesha, WI: median miss 2°F over 236 daysBeckley, WV: median miss 1°F over 237 daysCharleston, WV: median miss 2°F over 237 daysClarksburg, WV: median miss 2°F over 229 daysFairmont, WV: median miss 2°F over 236 daysHuntington, WV: median miss 2°F over 234 daysMartinsburg, WV: median miss 2°F over 228 daysMorgantown, WV: median miss 2°F over 233 daysParkersburg, WV: median miss 1°F over 234 daysWeirton, WV: median miss 2°F over 235 daysWheeling, WV: median miss 2°F over 234 daysCasper, WY: median miss 2°F over 256 daysCheyenne, WY: median miss 2°F over 255 daysEvanston, WY: median miss 2°F over 259 daysGillette, WY: median miss 3°F over 255 daysGreen River, WY: median miss 2°F over 255 daysJackson, WY: median miss 4°F over 257 daysLaramie, WY: median miss 3°F over 255 daysRiverton, WY: median miss 2°F over 255 daysRock Springs, WY: median miss 2°F over 255 daysSheridan, WY: median miss 3°F over 258 days2° or less3°4°5-6°more
Every town with thirty or more graded days, coloured by the median miss of the high temperature forecast there, all lead times together. Easiest to forecast so far: Salisbury, MD (1°); hardest: Anchorage, AK (13°, with its station 13.8 miles away).

Everyone has an opinion. Almost nobody checks, because checking means writing the forecast down before the day arrives - and the Weather Service only ever publishes the current one. So we keep the receipts: every day we archive the forecast for 389 towns, and afterwards we compare it against what the nearest weather station actually recorded.

This measures the National Weather Service, not anyone who publishes here. Nobody on Forecaster HQ is graded, ranked or badged by this page; it is the public forecast every forecaster starts from, checked in the open.

Days checked

100,212

Towns

389

Since

Aug 15, 2026

Station distance

4.8 mi

Today’s forecast misses the daily high by 2.26°F on average, and the forecast made 6 days ahead misses by 4.38°F. Set aside the fixed gap between each town and the weather station measuring it, and the forecasting alone accounts for 2.08°F and 4.14°F. The forecast made 2 days ahead landed within 3°F of the high 71 times in a hundred.

0°2°4°6°today+1d+2d+3d+4d+5d+6dtotal missforecasting alone
Average miss on the daily high, in degrees Fahrenheit, against how far ahead the forecast was made. The lower line removes each town’s fixed offset from its weather station.
MadeMissForecasting aloneLowDays checked
Same day2.3°F2.1°F3.9°F15,572
1 day ahead2.6°F2.5°F3.9°F15,185
2 days ahead3.0°F2.7°F3.9°F14,796
3 days ahead3.3°F3.0°F4.0°F14,414
4 days ahead3.8°F3.5°F4.1°F14,028
5 days ahead4.3°F4.0°F4.3°F13,640
6 days ahead4.4°F4.1°F6.1°F11,910

What this does and does not say

This measures the National Weather Service, not us. We archive their forecast; we are not grading our own homework. The Weather Service is very good at this, and the numbers above are better than most people assume - a two-day-out forecast landing within 3°F most of the time is a real achievement.

Some of the miss is not forecasting at all. Outcomes come from the nearest automated station, usually at an airport - the same instruments the official daily high and low come from. But the forecast describes the town, and the thermometer sits somewhere else: the median town here is 4.8 miles from the station grading it. In about a third of towns the error never changes sign across the whole record, which is not a forecast getting things wrong - it is two places with different weather. That gap widens with distance, from under two degrees within five miles to over four beyond twenty. The “forecasting alone” column removes each town’s own offset and is the fairer measure of skill.

A day is only graded once it has ended everywhere. A station’s summary for the current day reports the highest reading so far, not the day’s high, so grading against it makes every forecast look badly wrong. Nothing here is scored until the day is complete in every time zone.

The lead times are not measuring the same days. A forecast six days ahead can only be graded for dates at least six days after the archive began, so each column covers a slightly different stretch of weather. That is why the six-day figure can sit below the five-day one rather than continuing to climb: it is a smaller sample of different days, not evidence that forecasting further out is easier. Comparisons between adjacent columns are weaker than the overall shape, and both will firm up as the record lengthens.

The record is young. It starts on Aug 15, 2026, so this is one stretch of weather in one season, not a verdict on the whole year. Forecasts are easier in a settled pattern than in an unsettled one, and this page will get more honest as the archive lengthens. Lead times with too few graded days are left blank rather than filled with a number that would only get quoted without its caveat.

Sources: forecasts from the National Weather Service, archived daily. Observations from the Iowa Environmental Mesonet’s summaries of ASOS data. Coastline from Natural Earth. Updated daily.