GeoDataViewer
Menu
Launch Studio
Theme

EPSG Code Converter — Convert Coordinates Between Any Two CRS

Quick answer: pick a source and target EPSG code, type a coordinate, and get the converted value instantly — WGS 84, Web Mercator, UTM, Lambert-93, NZTM and hundreds more. Everything runs in your browser.

Easting / X—
Northing / Y—

What an EPSG code actually is

Every set of coordinates is meaningless on its own. The number 452315 could be metres east of a UTM zone's central meridian, feet on a local site grid, or something else entirely. An EPSG code is the label that removes the ambiguity: it names one exact coordinate reference system, including the datum it sits on and the projection used to flatten it.

The registry grew out of work by the European Petroleum Survey Group, which needed a shared way to describe survey data across companies and countries. That group was folded into the IOGP in 2005, but the codes kept the old name. There are several thousand entries today, covering everything from global systems to a single country's cadastral grid.

In practice you only meet a handful of them. The table below covers the ones that come up constantly.

The codes you will actually use

EPSG Name Units Use it for
4326 WGS 84 degrees Storage, GPS, GeoJSON, almost everything published
3857 Web Mercator metres Web maps and tiles: Google, OSM, MapLibre
326xx / 327xx WGS 84 UTM metres Local metric work; 326 north, 327 south
258xx ETRS89 UTM metres European metric work that has to be datum-correct
4269 NAD83 degrees US and Canadian data that predates modern WGS 84 work

Datum versus projection

These two get conflated constantly, and the confusion causes most of the real-world misplacements. A datum is a model of the Earth: an ellipsoid plus a defined position and orientation relative to the planet. WGS 84, NAD83, and OSGB36 are datums. A projection is the set of formulas that flatten that curved model onto a plane, such as transverse Mercator or Lambert conformal conic.

An EPSG code names a datum and a projection together. That is why two codes can use the same projection but place your data a hundred metres apart — the difference is the datum, not the maths.

When a conversion needs to move between datums, the accurate way to do it is a grid file: a table of measured offsets covering the area. Those files are large and loaded from disk, which is why a browser cannot perform every conversion in the registry. EPSG:27700 is the common example, and the converter above tells you when you have hit that limit.

Useful codes to convert between

These are the systems the converter offers as presets. Any other code can be selected by editing the value directly.

Global

  • EPSG:4326 — WGS 84

    The default for GPS and nearly all web data.

    example: 2.3522, 48.8566

  • EPSG:3857 — Web Mercator

    The projection behind Google Maps, OSM, and MapLibre tiles.

    example: 261848, 6250836

  • EPSG:3395 — World Mercator

    True Mercator, unlike the spherical Web Mercator.

    example: 261848, 6250670

National and regional grids

  • EPSG:4269 — NAD83

    Standard for US federal and Canadian data.

    example: -74.0060, 40.7128

  • EPSG:2154 — RGF93 / Lambert-93

    The official French national grid.

    example: 652361, 6862035

  • EPSG:27700 — OSGB36 / British National Grid

    Requires a datum grid that cannot load in a browser.

    example: 530000, 180000

  • EPSG:25831 — ETRS89 / UTM zone 31N

    The usual European alternative to WGS 84 UTM.

    example: 452315, 5410985

  • EPSG:2193 — NZGD2000 / New Zealand Transverse Mercator

    NZTM2000 (New Zealand)

    example: 1748000, 5428000

  • EPSG:28355 — GDA94 / MGA zone 55

    MGA zone 55 (Australia)

    example: 320000, 5810000

  • EPSG:31370 — Belge 1972 / Belgian Lambert 72

    Belgian Lambert 72

    example: 150000, 170000

  • EPSG:28992 — Amersfoort / RD New

    RD New (Netherlands)

    example: 120000, 480000

  • EPSG:2056 — CH1903+ / LV95

    LV95 (Switzerland)

    example: 2600000, 1200000

  • EPSG:5514 — S-JTSK / Krovak East North

    S-JTSK Krovak (Czechia/Slovakia)

    example: -750000, -1050000

Common conversion mistakes

Swapped axes. GeoJSON and most GIS software store longitude first, latitude second, while people say "latitude and longitude" out loud. Feeding a swapped pair into a conversion usually still produces numbers, which is what makes the error so persistent.

Feeding projected values into a geographic code. A UTM easting of 452315 is not a longitude and will be clamped or rejected if you treat it as one. If a value is in the hundreds of thousands or millions, it is almost certainly metres.

Assuming 4326 and 3857 are interchangeable. They are not. Convert deliberately when moving between storage and display, rather than relying on software to guess.

Using a nationwide grid for a local survey. A projection is most accurate near its own standard parallels or central meridian. Distortion grows with distance from them, which is why countries define their own systems rather than adopting one global grid.

Frequently asked questions

What is an EPSG code?
An EPSG code is a short number that identifies one specific coordinate reference system. EPSG:4326 is latitude and longitude on the WGS 84 globe; EPSG:3857 is the Web Mercator projection used by online maps. Quoting the code is how GIS software agrees on what a set of numbers means.
What does EPSG actually stand for?
It stands for European Petroleum Survey Group, the industry body that originally compiled the registry. That group was absorbed into the IOGP in 2005, but the name stuck and the codes are still called EPSG codes. The registry itself is now maintained as the EPSG Geodetic Parameter Dataset.
Which EPSG code should I use for latitude and longitude?
EPSG:4326, usually written WGS 84. It is what GPS receivers output and what GeoJSON assumes. Note the axis order convention: in GIS software and GeoJSON the order is longitude then latitude, even though coordinates are usually spoken as latitude first.
What is the difference between EPSG:4326 and EPSG:3857?
Both cover the whole world, but 4326 stores degrees on a globe while 3857 projects those degrees onto a flat square for tiled web maps. 3857 is what Google Maps, OpenStreetMap, and MapLibre use internally. Convert to 3857 for web mapping, and keep 4326 for storage and analysis.
Why are my coordinates in the wrong place after converting?
The usual cause is a swapped axis order, or a coordinate that was already in a projected system being treated as latitude and longitude. Check that the source code matches the data: a value like 452315, 5410985 is metres in a UTM zone, not degrees.
Why does British National Grid (EPSG:27700) fail to convert?
EPSG:27700 depends on an OSTN15 datum-shift grid, an auxiliary file that shifts coordinates between the OSGB36 and ETRS89 datums. Browsers cannot load those grid files, so the conversion is not available here. Use an ETRS89 UTM zone such as EPSG:25830 or EPSG:25831 for the same area.
What is the difference between a datum and a projection?
A datum defines the shape and position of the Earth model your coordinates sit on — WGS 84, NAD83, and OSGB36 are datums. A projection defines how that curved surface is flattened onto a plane. An EPSG code identifies a complete pair, which is why two codes can share a projection but differ in datum.
Is my data sent anywhere?
No. The conversion runs entirely in your browser. Projection definitions for codes that are not built in are fetched once from epsg.io, but the coordinate values you type are never transmitted.

Related tools