Skip to content

Last updated 9 September 2026

Privacy Policy

Salah Time is built to work without an account or advertising. Your location and settings stay on your device. On builds with telemetry delivery configured, Share update diagnostics sends pseudonymous update health events so releases can be monitored; that collection and every other network interaction are listed below.

What stays on your device

Everything the app needs to work is stored locally, in your device’s own private app storage. That includes:

  • Your calculation settings — method, Asr school, high-latitude rule, manual per-prayer offsets, and Hijri adjustment
  • Your saved locations and which one is selected
  • Whether you have chosen to follow your device’s location
  • Your most recent location, so times still work without a fresh fix
  • Your notification preferences
  • Your display preferences — time format and accent colour

None of this is uploaded anywhere. It is not backed up to a server by the app, and there is no account to sync it to. On iOS it lives in an App Group container so the home-screen widget and Live Activity can read the same prayer times; that container is still on your device and is readable only by Salah Time and its own widget.

Your location

If you allow it, the app reads your device’s location to calculate prayer times and the direction of the Qibla. Both are pure calculations performed on your device, from the position of the sun and from the coordinates of the Kaaba.

Your coordinates are never sent to the developer. There is no server here to receive them, and the app contains no analytics, advertising or attribution service of any kind.

One lookup does leave your device, and only to name the place you are in — the label at the top of the screen. The app asks your own operating system to turn the coordinates into a place name: Apple’s geocoder on iOS, Google’s on Android, the same services your maps app uses, governed by Apple’s or Google’s privacy policy rather than this one. Nothing about that request reaches the developer. Prayer times and the Qibla are calculated on your device from the coordinates themselves and never depend on it, so if it fails, or you are offline, only the name is affected — the app falls back to its built-in catalogue of cities.

You can use the app without granting location access at all by choosing a city manually, and you can revoke access at any time in your device’s system settings.

Searching for a city

The app ships with a built-in catalogue of cities that works entirely offline. When you search in Add Location, the text you type is additionally sent to your platform’s own place-search service — Apple Maps on iOS, Google’s geocoder on Android — so that smaller places not in the built-in catalogue can still be found.

Only the text you type is sent. Your current coordinates are not included in that request. Your device’s own operating system handles the lookup, and Apple’s or Google’s privacy policy governs it, not this one. If the request fails, or the service is unavailable, the built-in catalogue is used and nothing is lost.

If you would rather nothing left your device at all, pick your city from the results that appear before you finish typing — those come from the offline catalogue — or avoid the search screen entirely.

Leaving a reward

Salah Time is free, and every feature stays free. The app offers an optional way to leave a reward if you would like to support it.

When that feature is enabled in your build, the app contacts RevenueCat, the service that processes those purchases, the first time you open Settings — where the reward card appears — and not before. Opening the app does not contact anyone. RevenueCat assigns an anonymous identifier to the installation and can see your device’s IP address and general device information. It is used only to show the correct prices and to remember whether you have left a reward before, so the app does not keep asking someone who has already given.

The payment itself is handled entirely by Apple or Google. The app never sees your card details, your name, or your billing address. If your build has no reward feature configured, none of this happens and RevenueCat is never contacted.

Reporting a problem or sending feedback

Feedback is sent from your own email app. The app prepares a message and hands it to your mail client — nothing is transmitted until you press send there, and you can read and edit every word first, including the diagnostic details.

To make a report useful without identifying you, the app attaches a short technical summary:

  • App name, version, build number, bundle identifier, and build type
  • Platform and operating system version
  • Device model, and whether it is a real device or a simulator
  • Screen size and scale
  • Language tag and time zone
  • How long the app took to start on this launch — two timings, in milliseconds
  • Your calculation and display settings — method, Asr school, high-latitude rule, manual offsets, time format, Hijri adjustment, notification state, Ramadan times, Live Activity, and accent colour
  • OTA update health — whether the native update controller was available, whether updates are enabled, the runtime version, whether embedded or launched update data is present, and transition sequence counts
  • The date and time the report was prepared

That summary deliberately excludes your coordinates, your city, your saved locations, and your device’s name, which on some phones is a person’s own name. It contains no identifier that could link two separate reports to the same person.

You may optionally include your email address so there is a way to reply. That is your choice, and leaving it blank does not stop the report from being sent. Whatever address your mail app sends from will of course be visible in the message itself.

Update diagnostics

Share update diagnostics is enabled by default on supported builds. When telemetry delivery is configured and the setting is enabled, the app sends a small queue of update lifecycle events to Salah Time’s telemetry service. Each event contains a random app-local installation identifier, a session and event identifier, platform, deployment channel, runtime version, app version, build number, reporter version, timestamps, whether the embedded or OTA bundle is running, and the update lifecycle outcome. Download sizes and durations may be included. Failures are reduced to an allowlisted stage, reason and short code or fingerprint; raw exception messages, request URLs and manifest contents are not sent.

The installation identifier is pseudonymous: it is not your name, email, account, advertising ID, location or device name. It lets the service connect events from one installation so an update attempt can be measured. Cloudflare may process ordinary network metadata to deliver the request, but Salah Time does not store an IP address in the reporting database.

The queue is bounded, expires automatically, and is never required for prayer times or any other app feature. Turn it off or clear it from Settings at any time. Turning it off stops new events; the clear action removes pending local delivery and rotates the app-local identifier. Events already received are retained for the periods below and are not connected to the new identifier.

Notifications

Prayer alerts are scheduled by your device, for your device. They are calculated locally and handed to the operating system’s own scheduler.

There is no push notification service, no server sending you messages, and no token registered with Apple or Google for that purpose. If you deny or later revoke notification permission, nothing else in the app is affected.

What the app does not do

  • No accounts, no sign-in, no profile
  • No advertising, attribution or cross-app tracking
  • No crash-reporting service and no collection of raw crash logs
  • No advertising, and no advertising identifier is read
  • No third-party tracking or attribution SDKs
  • No sale of personal information and no sharing for advertising or cross-app tracking
  • No collection of contacts, photos, calendar, microphone, or camera data

How long information is kept

Your settings and locations stay on your device until you change them or uninstall the app. Uninstalling removes them.

Update diagnostics kept on the device expire after 30 days, or sooner if you turn reporting off or clear it in Settings. On the telemetry service, raw accepted events are retained for 30 days, update-attempt projections for 90 days, event receipts for 60 days, and identifier-free hourly and daily aggregates for 395 days. Deleted-installation tombstones are retained for 60 days to reject late retries, then removed. Release metadata and deployment records are retained separately for operational history.

If you send a report by email, that email is kept only as long as it takes to understand and respond to the issue, and is then deleted. It is never added to a mailing list or used to contact you about anything else.

Security

Information kept on your device is protected by your device’s own security — its passcode, encryption, and the sandbox the operating system puts around every app.

When configured, update diagnostics, place search, and the reward service travel over encrypted connections. The telemetry service validates and queues events before projecting them into the reporting database.

Your choices

  • Use the app without location access by choosing a city manually
  • Revoke location or notification permission at any time in system settings
  • Avoid the online part of city search by using the built-in catalogue
  • Delete everything the app holds by uninstalling it
  • Send feedback without giving an email address

The reporting identifier is pseudonymous and is not linked to an account or contact details. You can stop future reporting and remove the local identifier from Settings. The service’s scheduled retention then removes event and attempt data; release and aggregate records remain only in the forms described above.

Children

Salah Time is suitable for all ages. It does not knowingly collect names, contact details, location or advertising identifiers from anyone, children included. Optional update diagnostics may collect the pseudonymous technical fields described above when enabled.

Changes to this policy

If the way the app handles information changes, this policy changes with it, and the date at the top is updated. Meaningful changes will be noted in the release that introduces them.

Questions about any of this, or something here that does not match what you have seen the app do? Please get in touch — corrections are welcome.

zeeshanans@gmail.com