Every AI app says it is private. This page is the list of things you can check without trusting us. Each takes under a minute and needs nothing but the phone in your hand.
OUT 0 BIN 2.7 GBCONNECTIONS 0SEALED · ON-DEVICE
What the app's own Proof screen shows on a device after a real chat — a picture, not a live reading of this page.
Five checks
-
The airplane test All platforms
Turn on Airplane Mode. Open Inborn and ask it anything. It answers at the same speed, because the model is on the device and there is no server to reach. The header shows an ✈ badge for as long as the device is offline. The app asks you to do exactly this during onboarding.
-
The permissions page Android
On Google Play, open Inborn's listing, then About this app → App permissions. "Have full network access" is not listed. The release build does not declare the INTERNET permission, so Android will not let the app open a connection. You can confirm it on the APK itself:
aapt2 dump permissions inborn.apkThe line
android.permission.INTERNETdoes not appear. Our build fails if it ever does. -
App Privacy Report iPhone · iPad
Settings → Privacy & Security → App Privacy Report. iOS lists every domain each app contacted in the last 7 days. Inborn's row stays empty. If you explicitly download a model from Hugging Face,
huggingface.coappears there, once, and the app tells you so before the download starts. -
The exit meter In the app
The Proof screen inside Inborn shows three numbers from the operating system's own counters: bytes out, bytes in and open connections. Out reads 0 B unless you start a model download yourself. In counts the model files the store delivered. The "Airplane test" button on that screen walks you through check 1.
-
A firewall Android · Windows · macOS
Put Inborn behind NetGuard (Android), Little Snitch or LuLu (macOS) or the Windows firewall, and watch nothing appear. There is no connection to block.
The source
Inborn's source is public at github.com/moshecohen90/inborn, source-available: you can read it, build it and publish what you find, though not redistribute or modify it. None of the checks above depends on that, though: every one of them is made from outside the app, on the build you installed. Continuous integration fails the build if the INTERNET permission appears through manifest merging, and the Proof screen names the commit the build came from, which you can now look up in the public history. We do not publish a per-release hash, because a hash cannot show that a binary came from the source you can read. The checks above do not need one.
The complete list of what can leave, and when
Nothing leaves on its own. These are the only situations in which any bytes go out, and each is either done by the store rather than by Inborn, or started by you with a tap:
- Model delivery. On Android, Google Play delivers models as asset packs, the way it delivers an app update. On every supported iOS version and on desktop, a download you start fetches one file over HTTPS from models.inbornapp.com; that request carries your IP address and nothing else, and no cookie or identifier. We use no Apple-hosted asset packs.
- Purchases. Apple, Google, Microsoft or Paddle process the payment. Inborn reads the receipt on the device. We never see your name, email or card.
- Hugging Face import. Only if you choose it, and the app says so first.
- Support email. Only if you write to us, from your own mail app, with what you chose to attach.
The same list, in legal wording and per platform, is section 3 of the privacy policy.
What this does not prove
These checks show that the app sends nothing. They do not make the AI right. A small model on a phone can be wrong, and Inborn labels every answer as AI-generated. Check anything that matters.