Connect via MCP →

Enter Calculation

Formula

Advertisement

Results

Initial Bearing
9.12°
measured clockwise from true north
Compass Direction N

What is the bearing between two points?

The bearing (or forward azimuth) between two geographic points is the compass direction you would head, measured clockwise from true north, to travel along the shortest great-circle path from a start coordinate to a destination coordinate. It is expressed in degrees from 0° (due north) through 90° (east), 180° (south) and 270° (west). This calculator works anywhere on Earth using latitude and longitude in decimal degrees.

Compass bearing angle measured clockwise from north between two points on a globe
The bearing is the angle measured clockwise from true north toward the destination point.

How to use this calculator

Enter the latitude and longitude of your starting point and your destination point in decimal degrees. Use positive values for north and east, and negative values for south and west (for example, 40.7128, -74.0060 for New York City). Press calculate to get the initial bearing in degrees plus the nearest 16-point compass direction.

The formula explained

The initial bearing is computed with the spherical-trigonometry formula $$\theta = \operatorname{atan2}\left(\sin\Delta\lambda\cdot\cos\varphi_2,\; \cos\varphi_1\sin\varphi_2 - \sin\varphi_1\cos\varphi_2\cos\Delta\lambda\right),$$ where \(\varphi_1\) and \(\varphi_2\) are the latitudes, and \(\Delta\lambda\) is the difference in longitude, all in radians. The two-argument atan2 function returns the correct angle in every quadrant; we then convert to degrees and add 360, taking the modulo 360 so the result always falls between 0° and 360°. Note this is the initial bearing — along a great-circle route the bearing changes continuously, so the final bearing at the destination differs.

Advertisement
Diagram of two coordinates showing latitude and longitude differences used in the bearing formula
The formula uses the two latitudes and the longitude difference between the points.

Worked example

From Land's End (50.066389, -5.714722) to John o' Groats (58.643889, -3.07): plugging the values into the formula gives an initial bearing of about \(9.12^{\circ}\), which rounds to a compass direction of N (north). Heading just east of due north matches the layout of Great Britain.

Compass Point Reference Table

A bearing is most often expressed as a value from \(0^{\circ}\) to \(360^{\circ}\) measured clockwise from true north. The 16-point compass rose divides the full circle into equal sectors of \(360^{\circ} / 16 = 22.5^{\circ}\). Each named point is centered on a multiple of \(22.5^{\circ}\) and spans \(\pm 11.25^{\circ}\) around that center.

Point Abbr. Center Azimuth Degree Range
North N 348.75°–11.25°
North-Northeast NNE 22.5° 11.25°–33.75°
Northeast NE 45° 33.75°–56.25°
East-Northeast ENE 67.5° 56.25°–78.75°
East E 90° 78.75°–101.25°
East-Southeast ESE 112.5° 101.25°–123.75°
Southeast SE 135° 123.75°–146.25°
South-Southeast SSE 157.5° 146.25°–168.75°
South S 180° 168.75°–191.25°
South-Southwest SSW 202.5° 191.25°–213.75°
Southwest SW 225° 213.75°–236.25°
West-Southwest WSW 247.5° 236.25°–258.75°
West W 270° 258.75°–281.25°
West-Northwest WNW 292.5° 281.25°–303.75°
Northwest NW 315° 303.75°–326.25°
North-Northwest NNW 337.5° 326.25°–348.75°

North straddles the \(0^{\circ}/360^{\circ}\) boundary, so its range wraps around from \(348.75^{\circ}\) through \(0^{\circ}\) to \(11.25^{\circ}\).

Advertisement

How to Calculate Bearing by Hand

This worked example finds the initial great-circle bearing from Land's End, England (\(\varphi_1 = 50.07^{\circ}\,\text{N},\ \lambda_1 = -5.72^{\circ}\)) to the Lizard Point area at (\(\varphi_2 = 49.96^{\circ}\,\text{N},\ \lambda_2 = -5.20^{\circ}\)).

  1. Convert the latitudes and longitudes to radians. Multiply each degree value by \(\pi/180\):
    \(\varphi_1 = 50.07 \times \tfrac{\pi}{180} = 0.87388\ \text{rad}\), \(\varphi_2 = 49.96 \times \tfrac{\pi}{180} = 0.87196\ \text{rad}\), \(\lambda_1 = -5.72 \times \tfrac{\pi}{180} = -0.09984\ \text{rad}\), \(\lambda_2 = -5.20 \times \tfrac{\pi}{180} = -0.09076\ \text{rad}\). You can confirm a single conversion such as 0.87388 rad.
  2. Compute the longitude difference \(\Delta\lambda = \lambda_2 - \lambda_1\):
    \(\Delta\lambda = -0.09076 - (-0.09984) = 0.00908\ \text{rad}\) (equivalently \(+0.52^{\circ}\)).
  3. Compute the atan2 numerator \(y = \sin(\Delta\lambda)\,\cos\varphi_2\):
    \(y = \sin(0.00908)\times\cos(0.87196) = 0.00908 \times 0.64323 = 0.005840\).
  4. Compute the atan2 denominator \(x = \cos\varphi_1\sin\varphi_2 - \sin\varphi_1\cos\varphi_2\cos(\Delta\lambda)\):
    \(x = (0.64154)(0.76568) - (0.76709)(0.64323)(0.99996)\)
    \(x = 0.49121 - 0.49335 = -0.002143\).
  5. Apply atan2 to get the angle in radians:
    \(\theta = \operatorname{atan2}(0.005840,\ -0.002143) = 1.91898\ \text{rad}\).
  6. Convert radians to degrees by multiplying by \(180/\pi\):
    \(\theta = 1.91898 \times \tfrac{180}{\pi} = 109.95^{\circ}\).
  7. Normalize to the \(0^{\circ}\)–\(360^{\circ}\) range with \((\theta + 360)\bmod 360\):
    \((109.95 + 360)\bmod 360 = 109.95^{\circ}\).

The initial bearing is therefore about \(110^{\circ}\) — an east-southeast (ESE) heading. The normalization step matters when atan2 returns a negative value (for example a result of \(-70^{\circ}\) becomes \(290^{\circ}\)).

FAQ

Is this the same as a straight line on a flat map? No. This is the great-circle (shortest-path) bearing on a sphere, which differs from a constant-heading rhumb line and from straight lines on flat projections.

Does the bearing stay constant during the trip? No, for great-circle routes it changes along the way. This tool reports the bearing at the starting point.

What coordinate format should I use? Decimal degrees. Convert degrees-minutes-seconds first, and use negatives for south latitudes and west longitudes.

Last updated: