British National Grid (OSGB36): How Eastings, Northings & GPS Work

The British National Grid reference system (OSGB36) is the official cartographic projection system utilized by Ordnance Survey across Great Britain. It eliminates spherical distortion by projecting the British Isles onto a transverse Mercator grid.

1. Origin and Grid Letter Designations

The National Grid originates at a false origin located southwest of the Isles of Scilly (to ensure all Eastings and Northings values remain positive numbers across the UK mainland).

The entire landmass is divided into 100km x 100km squares designated by two-letter prefixes (e.g. "TQ" for London and Essex, "SK" for Nottingham and Derby, "NT" for Edinburgh).

2. Eastings, Northings and Coordinate Conversion

Eastings represent the distance in meters east of the false origin, while Northings represent the distance north.

When GPS receivers measure latitude and longitude using the global WGS84 datum (EPSG:4326), a Helmert transformation or OSTN15 transformation matrix is applied to project coordinates accurately onto the OSGB36 datum (EPSG:27700) without 100-meter datum shift errors.

3. Haversine Great-Circle Distance Calculation

To compute the straight-line spherical distance between any two UK postcodes from their coordinates, the Haversine formula is used:

export function calculateDistanceMiles(
  lat1: number, lon1: number, 
  lat2: number, lon2: number
): number {
  const R = 3958.8; // Earth's radius in miles
  const dLat = (lat2 - lat1) * (Math.PI / 180);
  const dLon = (lon2 - lon1) * (Math.PI / 180);
  const a =
    Math.sin(dLat / 2) * Math.sin(dLat / 2) +
    Math.cos(lat1 * (Math.PI / 180)) * Math.cos(lat2 * (Math.PI / 180)) *
    Math.sin(dLon / 2) * Math.sin(dLon / 2);
  const c = 2 * Math.atan2(Math.sqrt(a), Math.sqrt(1 - a));
  return parseFloat((R * c).toFixed(1));
}