nrtechstudio.com

Degrees to DMS Converter

Convert decimal degrees to degrees-minutes-seconds (40.7128° → 40°42'46.08"N) and DMS back to decimal degrees, with step-by-step working, N/S/E/W hemisphere support, second precision control, and batch conversion for whole lists.

🔒 100% private — runs entirely in your browser, nothing is uploaded
Signed number, e.g. 40.7128 or −74.006. Negative = S/W.
Degrees · Minutes · Seconds
—
—
Show your work — step by step

    Worked examples

    Example 1 — New York City latitude: 40.7128° → DMS

    1. D = ⌊40.7128⌋ = 40°
    2. 0.7128 × 60 = 42.768 → M = 42′
    3. 0.768 × 60 = 46.08 → S = 46.08″
    40°42'46.08"N

    Example 2 — New York City longitude: −74.006° → DMS

    1. Sign is negative → hemisphere W; work with 74.006
    2. D = 74°; 0.006 × 60 = 0.36 → M = 00′
    3. 0.36 × 60 = 21.6 → S = 21.60″
    74°00'21.60"W

    Example 3 — reverse: 51°30'26.46"N → decimal

    1. Minutes: 30 ÷ 60 = 0.5°
    2. Seconds: 26.46 ÷ 3600 = 0.00735°
    3. 51 + 0.5 + 0.00735 = 51.50735°; N keeps it positive
    51.50735°

    Example 4 — 40.32° → DMS

    1. D = 40°; 0.32 × 60 = 19.2 → M = 19′
    2. 0.2 × 60 = 12 → S = 12.00″
    40°19'12.00"

    Methodology — how the conversion works

    Decimal degrees → DMS

    D = ⌊|DD|⌋
    M = ⌊(|DD| − D) × 60⌋
    S = (((|DD| − D) × 60) − M) × 60

    Implemented robustly, this converter rounds the total arc-seconds first: total = round(|DD| × 3600), then splits total into D/M/S. That single decision guarantees the carry rule below and keeps minutes in 00–59 and seconds below 60.

    DMS → decimal degrees

    DD = D + M/60 + S/3600  →  negate for S/W

    The 60-second carry rule

    60″ = 1′, so 59°59'60″ is invalid DMS. Rounding can push seconds to 60 (59.9999999° → 60°00'00″, never 59°59'60″). Cheap converters round each component separately and emit the invalid form; this one rounds total arc-seconds, so the carry is automatic — and the “Show your work” panel says so explicitly whenever a carry happens.

    Reading DMS notation

    ° = degrees, ′ (prime) = minutes, ″ (double prime) = seconds. Accepted input styles: 40°42'46.08"N, 40 42 46.08 N, 40d 42m 46.08s, 40:42:46.08, and plain decimals like 40.7128N. A leading sign or trailing N/S/E/W sets the hemisphere.

    Precision

    Seconds to 2 decimals ≈ 0.3 m on the ground — the right default for GPS work. The converter validates ranges honestly: minutes and seconds must be below 60, latitude ≤ 90°, longitude ≤ 180° — and says exactly what is wrong instead of guessing.

    Scope boundary — what this tool is (and isn't)

    Frequently asked questions

    What does DMS mean in degrees?

    DMS stands for Degrees, Minutes, Seconds — a way to write angles and geographic coordinates. One degree is split into 60 minutes (60'), and one minute into 60 seconds (60"). So 40°42'46.08" means 40 degrees, 42 minutes, 46.08 seconds. It is the traditional notation used on maps, GPS devices, and in surveying, while decimal degrees (40.7128°) are more common in software and spreadsheets.

    How do I convert decimal degrees to DMS by hand?

    Take the absolute value and work in three steps. 1) The whole-number part is the degrees: for 40.7128°, D = 40. 2) Multiply the fraction by 60: 0.7128 × 60 = 42.768, so M = 42 minutes. 3) Multiply the remaining fraction by 60: 0.768 × 60 = 46.08 seconds. Result: 40°42'46.08". Restore the sign at the end — negative becomes S or W. The converter above shows every step automatically under "Show your work".

    What is the formula to convert decimal degrees to DMS?

    With DD as the decimal value: D = trunc(|DD|); M = trunc((|DD| − D) × 60); S = (((|DD| − D) × 60) − M) × 60. The most reliable implementation rounds the total arc-seconds first — total = round(|DD| × 3600, 2), then D = total ÷ 3600, M = (total mod 3600) ÷ 60, S = remainder — because rounding at the end can produce 60 seconds, which must carry into minutes (for example 59.9999999° correctly becomes 60°00'00").

    How do I convert DMS back to decimal degrees?

    Use DD = D + M/60 + S/3600, then make it negative for S or W. Example: 40°42'46.08" → 40 + 42/60 + 46.08/3600 = 40 + 0.7 + 0.0128 = 40.7128°. For 74°00'21.60"W, compute 74.006 and apply the negative sign → −74.006°. The "DMS → Decimal" tab does this with validation — it rejects minutes or seconds of 60 or more instead of silently giving a wrong answer.

    How do I convert decimal degrees to DMS in Excel?

    With the decimal value in A1, use three helper cells: degrees =INT(ABS(A1)); minutes =INT((ABS(A1)-INT(ABS(A1)))*60); seconds =ROUND((((ABS(A1)-INT(ABS(A1)))*60)-INT((ABS(A1)-INT(ABS(A1)))*60))*60,2). Combine them with =D1&"°"&TEXT(E1,"00")&"'"&TEXT(F1,"00.00")&"""". For a whole column, the Batch tab on this page is faster: paste the column, copy the results back. Note that Excel's floating point can show 59.9999999 artifacts — round the seconds cell to avoid them.

    How do I convert degrees to DMS on a TI-84 or Casio calculator?

    On a TI-84 Plus, type the decimal value (for example 40.7128), then press 2ND → APPS to open the ANGLE menu and choose ►DMS, then ENTER — the display shows 40°42'46.08". On a Casio fx-991 series, type the decimal value and press SHIFT followed by the °'" key to toggle to DMS. To go the other way on either calculator, type the DMS value with the °'" key between components and press ENTER to get decimal degrees.

    What do N, S, E, W mean in DMS coordinates?

    They are hemisphere indicators: N (north) and S (south) for latitude, E (east) and W (west) for longitude. North and east are positive in decimal form; south and west are negative. So 40°42'46.08"N = +40.7128° (latitude) and 74°00'21.60"W = −74.006° (longitude). Choose the Lat (N/S) or Lon (E/W) mode in the converter and it appends the correct letter and validates the range (latitude ≤ 90°, longitude ≤ 180°).

    How many decimal places should the seconds have?

    Two decimals (46.08") is the common default and matches most GPS readouts — about 0.3 meters of precision on the ground. Surveying work may use 3–4 decimals. Zero decimals (46") is fine for casual use (~30 m precision). More than 4 decimals is almost never meaningful because consumer GPS is only accurate to a few meters. The precision selector on this page (0–6) re-rounds correctly with carry handling, so 59.9999" never appears.

    Why does 59.9999999° convert to 60°00'00" and not 59°59'60"?

    Because 60 seconds make a minute, 59°59'60" is not valid DMS notation — the 60" must carry into the minutes, giving 60°00'00". A correct converter rounds the total arc-seconds before splitting (59.9999999° × 3600 = 215999.99964 → 216000.00 → 60°00'00"), so the carry happens automatically. Converters that round each component separately can output the invalid 60" — this one never does, and the "Show your work" panel calls out the carry explicitly when it happens.

    Should I use decimal degrees or DMS?

    Use decimal degrees (40.7128°) for spreadsheets, code, and APIs — they are a single number, easy to sort, average, and compute with. Use DMS (40°42'46.08"N) for human contexts: printed maps, legal land descriptions, navigation, and GPS device entry. The notation is independent of the datum — the same conversion applies whether your coordinates are WGS84 or another reference system. Convert between them freely; just keep 4+ decimal places when round-tripping so you don't lose precision.

    Can I paste DMS coordinates into Google Earth, Google Maps, or a GPS?

    Yes. Google Earth and Google Maps search accepts DMS pasted directly, for example: 40°42'46.08"N 74°00'21.60"W. Most handheld GPS units have a position-format setting where you can switch between decimal degrees (hddd.ddddd°) and DMS (hddd°mm'ss.s"). If a device rejects your input, check that minutes and seconds are below 60 and that you included the hemisphere letter — those are the two most common entry errors, and this converter's copy formats are designed to paste cleanly.

    How do I convert decimal degrees to DMS in ArcGIS or QGIS?

    In ArcGIS Pro, add a text field and use Calculate Field with a Python expression: define dd_to_dms(dd) that takes int(abs(dd)) for degrees, int of the fractional part × 60 for minutes, and the remainder × 60 rounded for seconds, then returns f"{d}°{m:02d}'{s:05.2f}\"". In QGIS, the Field Calculator has a built-in to_dms() function: to_dms("lat", 'y', 2) converts a latitude field to DMS with 2 decimal seconds. For one-off or batch conversions outside GIS software, the Batch tab here handles hundreds of rows instantly.

    How do I convert decimal degrees to DMS in Python or JavaScript?

    Python: def dd_to_dms(dd): neg = dd < 0; total = round(abs(dd)*3600, 2); d = int(total//3600); m = int((total%3600)//60); s = total%60; return f"{'-' if neg else ''}{d}°{m:02d}'{s:05.2f}\"". JavaScript: const t = Math.round(Math.abs(dd)*3600*100)/100, d = Math.floor(t/3600), m = Math.floor(t%3600/60), s = t%60. The key detail both share: round the total arc-seconds before splitting into components, otherwise values like 59.9999999° produce an invalid 60 seconds. MATLAB is similar: d = fix(abs(dd)); m = fix((abs(dd)-d)*60); s = ((abs(dd)-d)*60-m)*60.

    Is this degrees to DMS converter free, and does my data leave my browser?

    Yes, it is completely free with no limits, and everything runs 100% in your browser — your coordinates are never sent to any server, stored, or logged. There are no accounts, no tracking of your inputs, and the page works offline once loaded. That also makes it safe for sensitive locations such as survey points or private property boundaries.

    Free tool by NRTechStudio