A personal weather station that is wrong by 0.01° of latitude is wrong by about 1.1 kilometres. That is enough to place a rooftop sensor in the next valley, to assign it to the wrong climate division, or to compare its temperature record with a neighbor that is not a neighbor. The historical TNET Weather page at /latlong-convert.php was a small converter between decimal degrees and degrees-minutes-seconds (DMS). The converter is not rehosted. The geodesy problem it pointed at is still the reason station metadata fails.
Amateur pages often treated “GPS coordinates” as a pair of numbers with no datum and no precision rule. Mapping software, NOAA archives, and mesomaps do not.
Two notations for the same angle
Geographic latitude and longitude are angles. Decimal degrees store them as a single real number, negative west and south by the usual signed convention. DMS stores the same angle as three fields that people can read off a sextant or a property plat: degrees, minutes, seconds. There are 60 minutes in a degree and 60 seconds in a minute, so the conversions are arithmetic, not meteorology:
- decimal degrees = signed degrees + minutes/60 + seconds/3600
- degrees = integer part of the absolute decimal value, with the original sign
- minutes = integer part of 60 times the leftover fraction
- seconds = the remainder in seconds, including any fraction of a second
Hemisphere letters (N, S, E, W) are not decoration. Dropping W and storing longitude as a positive number puts a North American station in Asia. Mixing + for west because “that is how the GPS handheld displayed it” is a common PWS error.
NOAA’s National Geodetic Survey documents both notations in its coordinate tools and services (NGS NCAT). NCAT accepts decimal degrees or packed DMS with an N/S/E/W prefix. If you need a conversion for legal or survey work, use NGS, not a weather-site PHP snippet.
The old page included routines recovered from a third-party tutorial. Those routines are not reproduced here. The arithmetic above is the entire method. Edge cases that actually bite station metadata are signs, rounding, and the difference between a format conversion and a datum transformation.
Why 0.01° is not a rounding curiosity
One degree of latitude is about 111 km on the Earth ellipsoid (the meridional length varies slightly with latitude; the round figure is enough for station siting). Therefore:
- 0.1° ≈ 11 km
- 0.01° ≈ 1.1 km
- 0.001° ≈ 110 m
Longitude degrees shrink by the cosine of latitude. At 30°N, 0.01° of longitude is about 1 km; at 60°N it is about half that. A form that stores latitude as 33.4 when the operator meant 33.42 has already moved the pin by a couple of kilometres.
That error does not average out in climate comparison. Temperature and precipitation vary at neighbourhood scale in cities, along coasts, and in complex terrain. NOAA’s GHCNd station lists include latitude, longitude, and elevation because a daily maximum without a location is not a climate series. If you join a PWS record to the nearest official station using bad coordinates, you are studying a derived pairing, not an observed colocation.
Mapping products compound the mistake. A 1.1 km offset can change the apparent elevation by tens of metres on a slope, which then gets used as if it were the barometer’s station elevation. Pressure reduction to sea level is sensitive to that height. The coordinate typo becomes a pressure bias.
Format conversion is not a datum transformation
WGS 84 is the geodetic system defined by the U.S. Department of Defense and used by civilian GNSS software. NAD 83 is the horizontal datum NOAA NGS currently identifies for federal mapping in the United States (NGS datums). They are close. They are not identical. NOAA’s VDatum tutorial notes that later WGS 84 realizations differ from NAD 83 (1986) by about two metres in the conterminous U.S. (VDatum datums).
Two metres does not matter for a city-scale weather map. It does mean that “I converted DMS to decimal, so the point is now WGS 84” is false. You changed notation, not reference frame. Amateur pages often assumed:
- the GPS readout was WGS 84 (usually true for a consumer receiver);
- WGS 84 equals “the map” (false if the map is NAD 83 or an older local datum);
- elevation from GPS is orthometric height above sea level (false; GNSS gives ellipsoid height unless a geoid model is applied).
If your station coordinates came from a phone, record them as WGS 84 and say so. If they came from a USGS topo or a property survey, they may be NAD 83 or something older. Do not run them through a DMS converter and call the result “corrected.”
For U.S. work that needs a real transformation, NGS NCAT is the official tool. For a PWS homepage, the honest metadata is: decimal degrees to a stated precision, hemisphere, estimated accuracy, and datum if known. Unknown datum is better than a fake one.
Precision, significant figures, and forms
A converter that prints 12 decimal places is not more accurate than the GPS. Consumer GNSS is typically good to a few metres under open sky, which is about 0.0001° of latitude. Publishing 33.4158291733 implies a survey. Store what you measured, plus one extra digit if you must avoid round-trip noise, and stop.
PHP that splits on a decimal point to recover minutes and seconds will break on negative longitudes, on values between −1 and 0, and on scientific notation. Those bugs are why a one-page amateur converter was a poor place to canonicalize a station’s official coordinates. Validate with:
- latitude in [−90, 90], longitude in [−180, 180] (or an equivalent 0–360 convention that you document);
- minutes and seconds in [0, 60);
- a round-trip: decimal → DMS → decimal stays within your stated precision;
- a map check against a known street or benchmark.
Where coordinates travel on a weather site
Once the numbers are wrong, they replicate. RSS items inherit them (observation contract). Mesomaps cluster the station with the wrong neighbours. Climate HTML does not contain lat/lon, so a parser that later geocodes from the site’s “about” page will freeze the error into a yearly graph. Downloads and project packs (provenance of scripts) sometimes shipped sample configs with the author’s location still inside.
The projects index and the legacy scripts hub assumed operators already knew where the station was. That assumption is the metadata bug.
Practical rule for a station record
Keep one canonical coordinate pair, in signed decimal degrees, with:
- the date they were determined;
- the method (GNSS, map, address geocode);
- the datum if known;
- elevation as a separate field with its own source (not “GPS altitude” unless you mean ellipsoid height).
Convert to DMS only for display. Convert datums only with NGS or an equivalent national agency tool. If two lists of the same station differ by 0.01°, treat that as a data problem, not as rounding.
TNET’s research pipeline has to know where an observation came from before it can be compared with regional network measurements or atmospheric fields. That requirement is the same one a PWS operator meets when filing coordinates. The public account of source quality and location metadata is data sources, quality controls, and methodology.