Qibla direction: the bearing, and what your compass gets wrong
Short answer: the qibla is the initial great-circle bearing from where you stand to the Kaaba at 21.4225°N, 39.8262°E. It is a true bearing. A phone compass reports magnetic north unless the app corrects for declination — a difference of up to about 20° across North America, Europe and Australia.
Qibla bearing from major cities
True bearing, measured clockwise from north. Distance is great-circle to the Kaaba.
| City | Country | Qibla (true) | Distance |
|---|---|---|---|
| Mumbai | India | 280.07° | 3,452 km |
| Surat | India | 276.60° | 3,413 km |
| Karachi | Pakistan | 267.74° | 2,800 km |
| Colombo | Sri Lanka | 294.79° | 4,589 km |
| Dubai | UAE | 258.23° | 1,631 km |
| Nairobi | Kenya | 7.20° | 2,547 km |
| Dar es Salaam | Tanzania | 1.22° | 3,138 km |
| London | United Kingdom | 118.99° | 4,794 km |
| Leicester | United Kingdom | 118.91° | 4,915 km |
| New York | United States | 58.48° | 10,306 km |
| Chicago | United States | 48.67° | 11,146 km |
| Houston | United States | 45.49° | 12,574 km |
| Toronto | Canada | 54.58° | 10,496 km |
| Sydney | Australia | 277.50° | 13,236 km |
The four things that make a qibla app point wrong
The bearing arithmetic is the easy part and is almost never the bug. Every fault we have shipped and fixed was in the sensor plumbing:
- Magnetic vs true north. Android's rotation sensor is referenced to the geomagnetic pole. Subtracting the local declination is mandatory — and doing it twice is just as wrong, which is why the correction must not be applied on iOS, where the system has already done it. In India declination is about half a degree, which is exactly why this bug can hide for years.
- An uncalibrated magnetometer. This is the one that makes the needle point nearly opposite, and it will not fix itself. A qibla app should say so and ask you to swing the phone in a figure-eight, rather than draw a confident wrong arrow.
- A heading that is never actually delivered. On iOS the true heading reads as −1 unless location updates are actively running. The failure does not look like a dead dial — it looks like a plausible but fixed bearing.
- Raw sensor jitter. Output wobbles several degrees at around 30 Hz and has to be smoothed the short way around the circle, or the needle spins 358° backwards every time it crosses north.
How to sanity-check any qibla app
Compare its reading against the table above for the nearest listed city, standing outdoors and away from metal, cars and speakers. If it is off by more than a couple of degrees, calibrate first; if it is off by roughly the local magnetic declination, the app is showing you a magnetic bearing.
Check it yourself
Every figure on this page comes from the same code the app runs. The prayer windows are pinned by a test suite against the published Mumbai timetable, and the qibla bearings against published directions for London, New York, Mumbai and Nairobi — so a change to the rule breaks the build rather than quietly changing what people pray to.
Found a disagreement with your local timetable? Tell us — include the city and the date and we will check it.
Prayer window rules → · Hijri calendar variants → · Start tracking →
Namaaz Tracker