SpeedTrace Privacy Policy

Last updated: November 5, 2026

SpeedTrace (“the app”, “we”, “us”) is a GPS speedometer and trip recorder for iPhone.

If you don’t share, it doesn’t go online. The speedometer, the dials, your trips, your routes and your speed history live only on your iPhone and in your own iCloud. There are no ads, no analytics, no tracking and no third-party SDKs.

Your location leaves this phone in exactly one case: when you start a Live Location Share. That is a feature you turn on, one share at a time, for a length of time you choose. It needs an account; nothing else in SpeedTrace does.

This policy explains exactly what the app accesses, why, and what leaves your device.

Summary (the short version)

  • Everything except Live Location Sharing works with no account and no network. Your trips, routes and speed history stay on your device (and in your own iCloud, only if you enable iCloud sync).
  • No analytics, no tracking, no advertising, no third-party SDKs. We do not profile you and we never sell, rent or share your data.
  • An account is needed only to start a live location share. Signing in is Sign in with Apple or an e-mail code; we store the minimum listed under Accounts.
  • A live location share uploads your position while it runs, and only while it runs. It ends when your chosen time runs out, when you arrive, or the moment you tap Stop — and the route it was showing is deleted from our server at that moment.
  • Anyone holding a share link can watch it. The link itself is the key; there is no sign-in on the viewer page. Send it only to people you want watching.
  • Two optional features also touch the network: Speed Limit lookups (OpenStreetMap) and iCloud sync (your own iCloud account).

Information the app uses

Location data

SpeedTrace uses your device’s GPS through Apple’s Core Location framework to provide its core function: showing your live speed, altitude, and heading, and mapping your route.

  • While-Using permission powers the live speedometer and map.
  • “Always” permission is optional. It is requested only if you enable Background Tracking, so a trip keeps recording when the screen is off, or so a live location share keeps running when you lock the phone. While it is in use iOS shows its own location indicator, which we cannot hide or suppress.
  • Location is processed on your device. Recorded trips (route points, speed, altitude, timestamps) are saved in a local database on your iPhone, and are never uploaded to us — not even while a live share is running (a share sends live points as described below; it does not send your trip history).

You can revoke location access at any time in iOS Settings → Privacy & Security → Location Services → SpeedTrace.

Trip history

Trips you record — including the route polyline, distance, duration, max/average speed, and elevation — are stored locally on your device using Apple’s SwiftData. You can view, export, or delete this data at any time inside the app. Deleting a trip removes it permanently from your device.

Accounts

You only need an account to start a live location share. The speedometer, the dials, your trips, the HUD, 0–100 timing, export, speed limits and everything else work without one, and will keep working if you never sign in or if you later delete your account.

A share lives on our server for as long as it runs, so it has to belong to someone: that is what the account is for. It also means you can stop a link from another device, and that a link you sent still recognises you after you change phones.

How you sign in

  • Sign in with Apple, or
  • an e-mail code — we send a six-digit code to an address you enter, from [email protected].

We do not offer any other sign-in method, and we do not use social logins or third-party identity SDKs.

What we store for an account

On our own server (run by us on Cloudflare; see Where our server is):

  • A SpeedTrace user id — a random identifier that is not derived from anything about you, and the date the account was created.
  • Your sign-in identity. For Sign in with Apple: the opaque subject identifier (sub) Apple issues for SpeedTrace, and the Apple refresh token, stored encrypted, which exists only so that deleting your account can revoke SpeedTrace’s authorisation with Apple. For e-mail sign-in: the verified e-mail address. If Apple gives us one of its private relay addresses we keep it only as that identity’s own address and never treat it as a real mailbox or use it to join two accounts together.
  • Your e-mail address, if you gave us one — used to send sign-in codes and nothing else. You will not receive marketing from us.
  • Your device’s attested public key identifier (Apple’s App Attest), with the platform and whether it is a development or production build. This is what lets our server tell a real copy of SpeedTrace on a real iPhone from a script, and it is why you are not asked for a password.
  • Your device’s push token and language, so we can tell you about things like a subscription that failed to renew. These notifications are not marketing.
  • Purchase identifiers from Apple — the transaction identifiers for your SpeedTrace purchases, so the server knows your account has Pro and a share may run its full length. We never see your payment details; those stay with Apple.
  • A list of the notifications we sent you, as a kind and its numbers (the words are written when you read them). This is your in-app notification history.

While a sign-in code is outstanding we store only a hash of the code, the address, the device that asked for it and an expiry five minutes out, plus the time each code e-mail was sent, which is how we limit how many can be requested.

How to delete your account

In the app: Settings → Account → Delete Account. It takes effect immediately:

  • every way of signing in is forgotten, including revoking SpeedTrace’s authorisation with Apple, so SpeedTrace disappears from your Apple ID’s list of apps using Sign in with Apple;
  • every live share on the account ends and its route data is deleted (below);
  • your SpeedTrace user id and e-mail address are removed from our directory.

Your trips stay on your phone — they were never ours to delete. Your purchases belong to your Apple Account, not to us, so Restore Purchases still works afterwards and Pro is not lost. Account deletion cannot be undone. If you would rather only sign out, Settings → Account → Sign Out leaves the account in place.

Live Location Sharing

This is the one feature that sends your location off your phone. It exists so you can let someone follow you on a drive: you start a share, you get a link like https://live.mzjpg.com/s/<token>, you send that link to whoever you like, and they watch your position move in a browser.

A share only runs while you say it runs: two minutes for a free preview, or 15 minutes, an hour, 8 hours, or until you arrive, with Pro. It ends on its own when the time is up or when you reach the destination you set, and you can end it at any moment from the banner on the speedometer or from the Lock Screen. While a share is running SpeedTrace always shows it — a Live Activity, a banner that cannot be dismissed, and iOS’s own location indicator. There is no way to run a share invisibly, and you can only ever share your own location.

What is sent

While the share runs, and only while it runs, the app sends a point roughly every five seconds containing:

  • the timestamp,
  • your latitude and longitude,
  • your speed — only if “Share my speed too” is on for that share; leave it off and the page shows where you are but not how fast you are going,
  • your heading (direction of travel), when you are moving.

Plus, if you choose to set them when you start the share:

  • a nickname to label you on the map,
  • a destination (its coordinate and name), which is what lets the page show roughly when you will arrive. The arrival estimate is worked out on your phone, not on our server.

That is the whole payload. A share does not send your trip history, your altitude, your device identifiers, your contacts, your photos, or anything else on your phone.

Who it is sent to

To our own server — a Cloudflare Worker at live.mzjpg.com, written and run by us. It is not an analytics service, not a third-party location-sharing platform, and your points are not passed to anyone else.

Who can see it

Anyone who has the link. This is important enough to say plainly: the link is the credential. The viewer page asks for no account, no app and no sign-in, which is the whole point — you can send it to someone who has never heard of SpeedTrace and they can simply open it. It also means that anyone the link is forwarded to can watch too, for as long as the share is running. Send a share link only to people you want watching, and stop the share when you are done.

What a viewer sees is deliberately narrower than what you see:

  • your current position, and the last ten minutes of your route — not the whole trip, and not where you set off from, because that is usually the sensitive part;
  • your speed, only if you turned that on;
  • your arrival estimate, only if you set a destination;
  • how much time the share has left.

A viewer never learns your name, your e-mail address, your account, your other trips, or anything about any other share.

The viewer page draws its map with Apple MapKit JS, so a browser that opens the link loads map tiles from Apple. That is the viewer’s browser talking to Apple, under Apple’s privacy policy, and it happens whether or not the viewer uses any Apple service.

How long it is kept

  • While the share runs: your points are held in a rolling two-hour window. Anything older than two hours is deleted as new points arrive, so a long drive never accumulates into a stored trip on our side.
  • The moment the share ends — time up, arrived, or you tapped Stop — every point and every participant record is deleted, and the share stops being linked to your account. From that instant the link has nothing left to show.
  • For 24 hours after that, all that remains is a marker recording that a share existed and how it finished, so the link can say “this share has ended” instead of looking broken. It contains no location data and no user id.
  • After 24 hours that marker is deleted too, and the link returns nothing at all.

Alongside this, your account carries a short index of the shares you have opened — their ids and their start and expiry times, no location — which is what the app uses to list and stop your own shares; a row is swept once the share could no longer possibly be live. If you use free two-minute previews we also keep the timestamps of recent previews, so the allowance (three a day, one an hour) can be enforced.

How to delete it

  • End a running share: tap Stop on the banner, in the share sheet, or on the Lock Screen. The route it was showing is deleted immediately.
  • Delete everything at once: Settings → Live Sharing → Delete All My Sharing Data. Every share on your account ends now and the routes they were showing are removed from our server. Your own trips on this phone are not touched.
  • Delete the account: Settings → Account → Delete Account does all of the above and removes the account itself.

Where our server is

Our server runs on Cloudflare Workers, with share data in Cloudflare’s Durable Object storage and account data in Cloudflare’s D1 database. Cloudflare acts as our infrastructure provider; see the Cloudflare Privacy Policy. Requests are rate limited, which uses the requesting IP address at the moment of the request; we do not keep a log of who viewed a share. Share tokens are truncated in our operational logs.

Optional features that use the network

Speed limit lookups (off by default)

If you enable the Speed Limit feature in Settings, the app sends your current GPS coordinate to the OpenStreetMap Overpass API (overpass-api.de) to look up the posted speed limit for the road you are on.

  • Only the coordinate needed for the lookup is sent. No identifier, account, or device information is attached, and the request is not associated with you or your account.
  • These requests are handled by OpenStreetMap under their own terms and privacy practices. See the OpenStreetMap Privacy Policy.

iCloud sync (if enabled)

If iCloud sync is available and enabled, your trip data may be stored in your own private iCloud account so it can sync across your devices. This data is held in your iCloud under Apple’s terms; we never have access to it. You can disable iCloud for SpeedTrace in iOS Settings.

Purchases

Purchases and subscriptions are handled by Apple’s App Store. We never see your payment details. If you have an account, the transaction identifier for a purchase is sent to our server so it knows the account has Pro; nothing else about the purchase is.

If you never share

If you do not sign in, do not start a share, leave Speed Limit off and do not use iCloud sync, the app makes no network requests at all.

What we do NOT do

  • We do not collect analytics or usage statistics.
  • We do not use advertising or tracking SDKs.
  • We do not create profiles, or sell, rent, or share your data with third parties.
  • We do not upload your trips, routes or speed history — ever, with or without an account.
  • We do not require an account for anything except starting a live location share.
  • We do not let anyone see your location without you starting a share yourself. There is no way for another person to request, enable, or watch your location without you turning it on, and no way for a share to run without SpeedTrace showing you that it is running.

Audio alerts, Live Activities, and widgets

Over-speed voice/sound alerts, the Dynamic Island / Live Activity, and the home-screen widget all run locally on your device using the same on-device location data. The sharing Live Activity shows the state of a share you started — remaining time and how many people are watching — and sends nothing itself.

Children’s privacy

SpeedTrace is not directed at children. We do not knowingly collect personal information from children under 13, and an account may not be created by one. If you believe a child has created an account, contact us and we will delete it.

Your control over your data

  • Delete a trip: swipe to delete in the Trips list — it’s gone from your device.
  • Delete all local data: delete the app, or use iOS to clear its data.
  • Stop a live share: tap Stop on the banner or the Lock Screen — the route it was showing is deleted at that moment.
  • Delete all sharing data: Settings → Live Sharing → Delete All My Sharing Data.
  • Delete your account: Settings → Account → Delete Account.
  • Stop all location use: revoke the permission in iOS Settings.
  • Stop all network use: don’t sign in, don’t start a share, and turn off the Speed Limit feature.

If you are in the EEA or the UK, we process the small amount of account data listed above to perform the service you asked for (opening and running shares), and we rely on your consent for the share itself, which you give by starting it and withdraw by stopping it. You can access, correct, export or delete your data using the in-app controls above, or by writing to the address below. We do not transfer your data to anyone for their own purposes.

Changes to this policy

If this policy changes, we will update the “Last updated” date above and publish the revised version with the app.

Contact

Questions about this policy or your privacy? Contact us at:

Email: [email protected]