In short
- Every number comes from a named public or licensed source. Nothing is typed in by hand, and each day's record lists its source and when it was retrieved.
- Area is the official city boundary. The polygon is the U.S. Census Bureau boundary for the City of Vineland (place 3476070), not a circle or a zip code.
- Days are local calendar days. Each day runs midnight to midnight, America/New_York, including 23- and 25-hour daylight-saving days.
- Missing data is never reported as zero. Every day carries a status, and partial days are labelled as partial.
- The work can be repeated. The processing code is public, and any day can be recomputed from the same public archives.
Area covered
Rainfall
Estimated rainfall for Vineland (primary)
- Source
- NOAA Multi-Radar/Multi-Sensor (MRMS) MultiSensor QPE 1-hour Pass 2. This is radar-derived precipitation that NOAA corrects against rain gauges, published on a ~1 km grid (0.01°), from NOAA's public archive on AWS (
noaa-mrms-pds). - Area value
- For each hour we average every grid cell whose centre lies inside the city boundary (185 cells), then add the hours of the local day together. The hourly periods never overlap, and we never add up rolling "past 24 hours" totals.
- Completeness
- A day needs every hourly file: 24, or 23/25 on clock-change days. If an hour is missing, the day is shown as incomplete with the partial total labelled as partial. An hour where fewer than 90% of the city's cells have valid radar coverage is treated as missing.
- Corrections
- Hours that come from the faster, uncorrected Pass 1 product are marked provisional. The last three days are rebuilt every morning so late corrections are picked up.
Nearby measured reference
- Source
- Daily precipitation measured by the rain gauge at Millville Municipal Airport (KMIV), via the Iowa Environmental Mesonet ASOS archive.
- Why it's shown
- It is an independent, physically measured check on the radar estimate. It is about 8 miles south-southwest of the centre of Vineland, just outside the city, so on days with scattered thunderstorms the two can differ legitimately.
Validation: radar estimate vs. measured gauge
Computed live from the published daily records
Lightning
Ground strikes: NOAA / Vaisala NLDN (one-time import from May 1, 2026)
- Source
- NOAA NCEI Severe Weather Data Inventory monthly files
nldn-tiles-YYYYMM.csv.gz: the daily count of Vaisala National Lightning Detection Network cloud-to-ground strikes in each 0.1° grid cell (about 9 × 11 km). - For the city
- Eight cells overlap Vineland. The city estimate weights each cell's count by the share of that cell inside the city boundary (together they cover 1.88 cells' worth of area — the city's 69 sq mi). The raw total for all overlapping cells is also stored; it can include strikes just outside the city.
- Day basis
- NOAA's days are UTC (8 PM–8 PM Eastern in summer, 7 PM–7 PM in winter), so they are labelled as UTC days and not mixed with the local-day rainfall.
- Missing vs. zero
- The files list only cells with strikes. A day present in the national file with no strikes in our cells is recorded as zero; a day absent from the file is unavailable.
Satellite-detected lightning (every day since May 1, 2026)
- Source
- NOAA GOES-19 (GOES-East) Geostationary Lightning Mapper, Level-2 product (
GLM-L2-LCFA) from NOAA's public archive on AWS (noaa-goes19). The instrument watches the Americas continuously and records optical lightning flashes; one file covers 20 seconds. - Counting
- We read every file for the local day (~4,320, selected by each file's own start time so the day is midnight-to-midnight Eastern), keep flashes—not their component groups or events—that pass GLM's quality flag and whose energy-weighted centre falls inside the city boundary, and count them. The day record stores how many files were read and how much time the missing ones cover, for example "4,313 of 4,320 (2.3 min not covered)"; a missing file could fall during the most active part of a storm, so the count is a lower bound for that day.
- Completeness
- A day is complete when at least 98% of its files were read. Otherwise it is incomplete, and the count is shown as partial.
- What it measures
- Total lightning. The satellite sees cloud-to-ground and in-cloud flashes together and cannot separate them. Each pixel is about 8 km (5 mi) across, so a flash's position is known to within a few km. Published evaluations put GLM's detection rate at roughly 70–90% of flashes, higher at night than during the day. Treat these counts as an area-level record of lightning activity over the city, not as strikes at a specific site.
Xweather ground-network flashes (live from Sep 22, 2026)
- Source
- Vaisala Xweather
lightning/flashfeed, from ground-based sensors. The feed only reaches back 5 minutes, so it is checked every 90 seconds and flashes inside the city boundary are kept. - Coverage check
- Every check time is logged. Any gap longer than the feed's 5-minute window is measured, and the day is marked incomplete with the minutes that were not monitored.
Exact strike locations
Individual strike locations with cloud-to-ground / in-cloud classification for past dates require Xweather's historical lightning entitlement on its current /lightning endpoint (the older lightning/archive route was deprecated in April 2025). The system can import that once, back to May 1, 2026, when access is confirmed.
Status labels
- Complete
- Every source for the day was fully available and the day is final.
- Provisional
- The day is still in progress or ended less than 6 hours ago; values can still change.
- Incomplete
- At least one source is missing part of the day. Partial values are labelled.
- Unavailable
- No source could be read for the day.
Limitations
- Radar rainfall is an estimate for the whole city area. Rain at any one site can be higher or lower, especially under thunderstorms.
- Lightning counts describe activity over the city. They are not evidence that lightning struck a particular jobsite, and this is not a real-time lightning safety or all-clear system.
- Current conditions come from the nearest official station (Millville Airport) and are kept separate from the historical record.
Reproduce or audit
- Processing code, schedules and full change history: github.com/PEOntology/WeatherVinelandNJ
- Daily records as published (JSON, including per-day source, file counts and retrieval time): data/daily.json. A CSV download is on the dashboard.
- City boundary used: U.S. Census TIGERweb, place GEOID 3476070
- Raw sources: NOAA MRMS on AWS · NOAA GOES on AWS · Iowa Environmental Mesonet (KMIV) · National Weather Service API · Xweather