Route Foundry privacy policy
Route Foundry is local-first by design. This document says exactly what data the app touches, where it goes, and why — so the claim is checkable against the code, not just asserted.
The short version, which is also what the app tells you in Settings:
Your routes stay on this device unless you export or share them.
What the app collects
Nothing. There is no account, no application backend, no analytics SDK, no crash reporter, and no telemetry of any kind. Nothing you do in the app is ever sent to Divith Technologies or any third party by the app itself.
We therefore hold no personal data about you, have no user database, and have nothing to sell, share or breach. There is no advertising and no tracking, and the app is not part of any data broker relationship.
What's stored, and where
Everything lives in the app's local container on your device:
- Routes (geometry, waypoints, cues, notes) — SQLite plus file storage under Application Support.
- Recorded tracks — append-only JSON Lines files under Application Support.
- Imported map packs (raster MBTiles files you supply) — copied into Application Support.
- Imported routing packs (Valhalla tile extracts you supply) — copied into Application Support.
Preferences — units, map style, which offline pack is active, the last
map region — are in UserDefaults. Route content never is.
None of this is in iCloud, an app backend, or any third-party service. Deleting the app deletes all of it.
Route files are written with iOS file protection set to
completeUntilFirstUserAuthentication: encrypted at rest, and
unreadable on a device that has not been unlocked since boot. Not
complete, which would make them unreadable while the
device is locked — which is exactly when background navigation and
recording need them. There is no separate app-level encryption layer,
because there is no server-side copy to protect against and the platform's
protection covers the actual threat model.
Location
Location is used only for two features, both of which you have to explicitly start:
-
Showing your position on the map and giving turn-by-turn guidance while
navigating a route. This requests When In Use
authorization the first time you use it — never on launch, and never as
a side effect of drawing a map. Guidance can keep running with the
screen locked (a
CLBackgroundActivitySession), which is why the app declares thelocationbackground mode — but that session exists only while you are actively navigating. - Recording a track as you move (the Record tab). Same authorization, same "only while you asked for it" scope.
Pressing the locate button in the planner also asks, because you asked it to find you. Every other part of the app — planning, editing, importing, exporting, the map itself — works with location permission denied, and is tested that way.
Location is never used to build a location history, never logged anywhere off-device, and never used for anything other than the screen you are looking at while it is active.
Network access
The app makes network requests only from features that are inherently online and say so:
- Apple Maps draws the online basemap. This is the default map, so the map itself is an online feature until you install an offline pack.
- Smart Routing calls Apple's
MKDirectionswith the two points being routed. - Place search calls Apple's
MKLocalSearchwith the text you typed. A literal coordinate pair ("47.4816, 11.0958") is resolved on the device and sends nothing. - Elevation lookup sends points sampled along a route you have drawn to Open-Meteo's elevation API, which answers with the height of the ground there (Copernicus DEM). A route you draw carries no height information of its own, so this is where ascent, descent and the profile chart come from. The answer is stored with the route, so it is fetched once and then works offline. No API key, no account, and nothing identifying you is sent.
The first three are Apple Maps services, subject to Apple's own privacy terms; the fourth is Open-Meteo, subject to its terms. Route Foundry adds no tracking of its own on top of any of them, and sends no identifier that would tie those calls together.
Each is switchable off. Install an offline map pack for the basemap, draw segments by hand instead of routing them, type coordinates instead of searching, and turn off Look up elevation in Settings → Planning. With all four off the app makes no network requests at all.
Every other feature — offline map rendering, offline Valhalla routing,
route editing, recording, and GPX/TCX/KML/FIT/.routefoundry
import and export — makes zero network requests. The app never
bulk-downloads from public tile endpoints; offline maps come only from
files you import.
Turning on Airplane Mode leaves route planning, editing, import, export and navigation working, with an offline pack for the map and manual drawing in place of Smart Routing.
App Store privacy details
Apple asks every developer to declare, category by category, what their app collects. Route Foundry's declaration is the shortest one the form allows — Data Not Collected — and this is what that means in each category Apple lists:
| Apple's category | Collected? | What actually happens |
|---|---|---|
| Contact info, identifiers, purchases, financial info | No | There is no account, no sign-in, no in-app purchase and no payment of any kind. |
| Location | No | Used on the device while navigating or recording, and stored on the device if you save a track. It is never sent to us or to any analytics service. |
| User content | No | Routes, tracks and notes are files in the app's own container on your iPhone. They leave only when you export or share them. |
| Usage data, diagnostics | No | No analytics SDK, no crash reporter of ours, no telemetry. A diagnostics report is generated only when you ask for one, and shared only if you choose to send it. |
| Tracking | No | Nothing is tracked across apps or websites, so App Tracking Transparency never needs to ask. No advertising identifier is read. |
Apple's declaration covers data collected by the developer. The four online features above are requests your device makes to Apple or to Open-Meteo and that we never see, which is why they are declared as no collection — and why they are described in full here rather than left to a checkbox.
Account deletion
There is no account, so there is nothing to delete. Route Foundry never creates one, never asks you to sign in, and holds no server-side copy of anything. Deleting the app removes its data from your device; anything you exported is a file you already own. There is no request to submit and no waiting period.
Individual routes can be deleted inside the app at any time, with a recently-deleted route recoverable until you leave the library screen.
Children
Route Foundry is not directed at children and collects no personal data from anyone, including children. Because nothing is collected, there is no children's data for us to hold, verify or delete.
Third-party dependencies
The app links a small number of open-source libraries — MapLibre Native, GRDB, ZIPFoundation, and Valhalla's mobile routing engine — all of which run entirely on-device and none of which phone home. The exact pinned versions are in the project's package manifests, and their licences are listed inside the app under Settings → About → Acknowledgements.
Map data you import carries its own attribution, which the app displays on the map rather than hiding.
Privacy manifest
PrivacyInfo.xcprivacy is Apple's machine-readable declaration
of the same facts, shipped inside the app bundle. It records no tracking,
no tracking domains and no collected data types, and declares the two
required-reason API categories the app actually uses:
- UserDefaults (
CA92.1) — the app's own settings: units, map style, default activity, last map position, active offline pack. - File timestamps (
DDA9.1,C617.1) — dates on recordings inside the app's container, and the size of a map or route file you picked with the document picker.
Nothing there leaves the device, and nothing is used to identify anyone.
Diagnostics
Settings can produce a diagnostics report as a plain-text file you choose a destination for. It is never uploaded — there is nowhere for it to go. It contains version and capability information and counts only: no coordinates, no route names, no file paths and no identifiers. There is a test asserting exactly that, so it stays true.
If you send us a diagnostics report with a support request, you are sending it deliberately, by email, and we use it only to answer that request. See the support page for what we do with it.
Exporting your data
Everything you create can be exported in full — GPX, TCX, KML, FIT Course,
or the native .routefoundry package — because the file
is the product. The native format is documented and versioned,
stores the complete document, and verifies its own checksums on read.
There is no lock-in and no server-side copy to request or delete, because
none exists.
Your rights
Data-protection law gives you rights over personal data a company holds about you — access, correction, erasure, portability and objection among them. In Route Foundry's case those rights are satisfied structurally: we hold nothing, so there is nothing to disclose, correct or erase on our side, and the app itself gives you complete export and deletion of your own data at any time.
Rights in respect of the small amount of data our website processes, and the legal detail behind them, are set out on the GDPR and your rights page.
Changes to this policy
If a future version of the app changes what it stores, where it sends data, or which permissions it needs, this page is updated before that version ships, and the effective date at the top changes with it. A change that introduces any data collection would also change the app's App Store privacy labels and its privacy manifest — those three have to agree, and keeping them in agreement is part of our release process.
Contact
Route Foundry is published by Divith Technologies, Kumta, Karnataka, India. Questions about this policy, or about anything in it you would like evidence for: