[PILLAR]
Privacy: Exactly What Leaves Your Phone, and What Does Not
Does Base sell or share my health data?
It is never sold, never used for advertising or marketing, and never sent to the analytics service.
[TL;DR]
Base stores your whole training log in a database on your device and syncs everything except progress photos to a private Postgres database under your own account. The app is fully usable offline, forever.
Five things reach the network, and this page has a section for each: sync, product analytics, the barcode lookup, Google's Gemini API behind five optional AI features, and your device's own map service behind the picture under a route. Nothing else.
This page is organised by destination rather than by data type, because "what leaves the phone" is the only question it exists to answer and grouping it any other way buries the answers that matter.
The privacy screen inside the app is the authoritative version of this text. It is what App Review reads, it is written as prose rather than policy, and if this page and that screen ever disagree, the screen is right and this page is the bug.
What stays on your phone
Your whole log lives in a SQLite database on the device: food, workouts, sets, bodyweight, measurements, habits, endurance sessions and progress photos. The app is fully usable offline and nothing is needed from the network to read or write any of it.
Your GPS routes stay here. The map on a workout screen is drawn on this device from the route your watch recorded, and the route itself is never uploaded. Not to the server, not to a map provider, not to anyone. See "Map backgrounds" below for the one thing the map does fetch.
Progress photos are never uploaded to the Base server and never stored on it. The only time one passes through it is on its way to Google, when an AI feature sends it on Base's free AI allowance, and it is not kept (see "How the AI features reach Google" below). A copy of each one is saved to a "Base Progress" album in your own photo library, for one specific reason: iOS and Android both erase everything an app stores when the app is deleted, so a photo that lived only in the app's storage is guaranteed to be lost on the next reinstall. That copy is what survives.
It is your album, not the app's. If you have iCloud Photos turned on, those photos sync to iCloud the same way the rest of your camera roll does. That is your setting, not ours. Turn the backup off entirely by denying photo access in your system settings; the app will say what that costs rather than failing silently.
Your profile picture is the same: a copy is kept in the app's own storage on this phone and the path to it is never synced.
What goes to the server
So your log survives losing your phone, everything except the progress photos themselves syncs to a private Postgres database under your account. That includes the daily snapshot of what your health app reported, because the numbers on your dashboard have to survive a new phone too.
Every table is protected by row-level security, which means the database itself refuses any request that does not carry your own signed-in session. This is enforced at the data layer rather than in application code: the distinction matters, because an application-layer check is one bug away from being bypassed and a row-level policy is not.
Your email address and password are handled by the authentication provider. The app never sees or stores your password.
If you use Base's free AI, your AI requests also pass through the server on their way to Google, and it keeps a daily total of what they cost. "How the AI features reach Google" below has the detail.
Signing in with Apple or Google
If you sign in with Apple, the sheet is run by the operating system and the app never sees your Apple ID or your password. Apple hands Base a one-time token, your name and an email address, and it is your choice at that moment whether that address is your real one or a private relay address Apple forwards for you. Base treats both the same and never asks for the address behind a relay.
If you sign in with Google, the app opens Google in the system browser and Google sends back your name, your email address and your profile photo URL. Base never sees your Google password and asks for nothing else from your Google account. This is not the same as the Google Health connection in Settings, which is a separate, optional sign-in with its own permissions.
Both providers know that you signed in to Base and when. Neither is told anything about you: not your training, not your food, not your weight, and nothing at all from your health app.
This website
Two separate things happen on trybase.app, and neither of them is the app.
Page analytics. This site records which pages are opened, which links are clicked, and where visits come from, and sends it to PostHog, the same service the app uses, for the same reason: to find out which pages are useful and where people give up. Website visitors are not identified. No account is created, no email address is attached, and a visit here is never joined to an app account or to anything you do inside the app. There is no advertising identifier, no ad network, no session recording, and no attempt to follow you to any other site. A browser sending "Do Not Track" is not recorded at all.
The Android waitlist form. iOS is on the App Store, so there is nothing to request. If you ask to be told when the Android build lands, that email address is stored so we can send you that one email. A copy of each new signup is also emailed to the operator for that purpose. It is not joined to an app account, not used for analytics, and not sold. There is no marketing list beyond that one email. The browser is only allowed to insert an address; it cannot read the list.
Health data
With your permission, Base reads: sleep analysis, heart rate, heart rate variability, resting heart rate, walking heart rate, respiratory rate, blood oxygen, body and wrist temperature, steps, active and basal energy, VO₂max, bodyweight, and workout records including their distances, cycling power and GPS routes. It uses them to score recovery and sleep, to draw the map of a run or ride, and to adjust your calorie target. With your permission it also writes back the bodyweight and the nutrition you log, and a session you record on your watch, so your platform's health store stays the single accurate copy.
Some of those readings are also compared against your own recent nights to work out whether you may be coming down with something: your overnight respiratory rate, wrist temperature, blood oxygen, resting heart rate and HRV, each against your own baseline and never against anyone else's. That comparison happens entirely on the phone. It is not a diagnosis, the app never names an illness, and it asks whether you want to change your status rather than deciding for you.
Health data is never used for advertising or marketing, never sold, and never sent to the analytics service. You can revoke access at any time in your platform's health settings.
Two features can send some of it off the device. Both are optional, both send only when you use them, and neither sends anything until you have said yes to AI in the app: the endurance coach, and the coach chat. They are the only two, and exactly what each one sends is below.
Your Apple Watch
Base has a watch app. It shows today's numbers and it records lifting and endurance sessions. Everything it does is between your two devices, and none of it involves the network.
The phone sends the watch a small summary of today so it has something to show out of range: what you have eaten against your target, your macros, today's planned sessions, and the readings on the dashboard. That transfer is handled by the operating system directly between two devices you own. It does not go over the internet and it does not pass through any server of ours.
The watch sends back only what you did: each set you logged, and the fact that a session started and finished.
A run or ride recorded on your watch keeps its route the way any other watch workout does. The watch writes it into your health app, on your devices, and Base reads it back from there to draw the map. The route is never sent between the two devices by Base and is never uploaded.
How the AI features reach Google
The food scanner, the two AI coaches, the coach chat and the photo body fat estimator all run on Google's Gemini API. Nothing is sent to it until you use one of them, and the first time you do, the app asks whether that is all right. Say no and nothing is sent. You can take your yes back in Settings › AI, and the next AI feature you use asks again. The photo body fat estimator has its own switch, described below, and that switch is its yes.
Every account gets a free daily allowance of AI use, so the features work without any setup. On the allowance, a request goes from the phone to the Base server, which checks that you are signed in, adds Base's own Gemini key, passes the request to Google, and passes Google's answer straight back. The server does not store the request or the answer, and that includes any photo or note a feature sends: it passes through and is gone. What it keeps, under your account, is the date, a running total of what your AI use cost that day and how many requests there were, so it knows when the allowance is used up. Nothing about what you asked is kept, and the totals are deleted with your account. Google handles the request under the Gemini API terms that apply to Base's account.
If you add your own Gemini API key in Settings › AI, your requests go from the phone straight to Google under your key and never pass through the Base server. Google handles them under the terms you accepted when you created that key, and bills that key rather than Base. There is no daily limit on your own key, and the key is kept on the phone only.
Either way the same things are sent, and the sections below say exactly what each feature sends.
The AI food scanner
If you scan a plate with the camera, that photo is sent to Google's Gemini API to be identified, the way the section above describes. No health data, no account details and no other part of your log goes with it. Say no to AI, or simply do not use it, and the photo never leaves the phone: you enter the food by hand instead.
The two AI coaches
The workout coach and the endurance coach turn a sentence you type into a training week. Doing that sends what you typed to Google's Gemini API, the way "How the AI features reach Google" describes. Say no to AI and both coaches are off; the app offers to build the week by hand instead.
The workout coach sends what you typed, plus your sex, age, bodyweight, lifting experience, goal, how many sessions a week you said you do, and which weekdays already carry a run or a ride.
The endurance coach sends the same kind of summary plus a summary of your training history: how many runs and rides you recorded over the last twelve weeks, your average weekly mileage, your longest run and ride, your VO₂max, your estimated maximum heart rate, and your threshold pace and FTP. That is health data leaving the device, and it happens only when you open that coach, have said yes to AI, and ask it for a week.
Both coaches also send your goals, because a plan built without them is a schedule: the words you typed for each goal, what it measures, the number you are aiming at, and the date if you gave one. Where a goal is measured off your watch instead, only the target is sent, never the current reading.
Neither coach ever sends your location or any part of a route, any photo, anything you have eaten, your bodyweight history, your name, or your email. The history goes as counts and averages, never as a list of individual sessions with dates on them.
The coach chat
The chat is the feature that can see the most, and it sends nothing until you send a message and have said yes to AI. Say no and there is no chat, and every screen it draws numbers from is still there to be read directly.
When you send a message, what goes to Gemini is your message, the conversation so far, and a short profile line: your sex, age, lifting experience, goal, how you train, and today's date. Nothing else travels automatically.
Everything else travels only when a question needs it, and only as the answer to a specific question the assistant asked the app. It can ask for your recovery, sleep and heart-rate history; last night broken into deep, REM, core and awake; your resting heart rate, HRV and walking heart rate over time; your steps and daily energy; your VO₂max; the list of workouts your watch recorded, of every sport, with the duration, distance, calories and average and maximum heart rate of each; and one workout in full, meaning its heart-rate curve, its time in each zone and its per-mile splits. It can also ask for your bodyweight trend, your lifting progress, the whole history of any one lift, your calories and macros as day totals, your training plan, your personal bests, your goals, your micronutrient averages, your tape measurements with the body composition estimated from them, and any body fat estimates the photo estimator has already stored, as numbers plus the one sentence it wrote about which anatomy it judged from. The photographs behind those estimates are a separate question, answered below and governed by one switch.
That is health data leaving the device, it is the largest amount of it the app ever sends anywhere, and it is why this feature waits for your yes before it sends anything.
The plus button can attach photos: you tap Camera or Photos, your phone's own picker opens, and the images you hand back are resized on the device and sent with your message. Up to four at once, so a question about your physique can carry a front, a side and a back shot. Base cannot read your library on its own and cannot see anything you did not choose.
The assistant can also look at your progress photos, and only if you have turned on “Estimate body fat from photos”. That is the same switch, and the same decision, as the weekly body fat estimator in the next section, because it is the same act: your progress photographs going to Gemini. One switch rather than two, so turning it off turns it off everywhere. With it on, a question about how lean you are or which way your body composition is moving can send at most four images, matched angles from the first set in your archive and from your most recent set, so the assistant can say what has visibly changed and where. With them go the two dates, which angle each image is, and your trend bodyweight on each of those dates, and nothing else. The exact images that were sent are shown on a card under the reply, so you can see what it looked at rather than take it on trust. With the switch off, the assistant has no way to reach your archive: it is told plainly that reading is off, it is sent no image, and it answers from your numbers.
You can also tell it things no sensor measures: that you are ill today, that you hurt your knee, that you are travelling. It writes those down with the exact days you named, shows you a card before anything is saved, and sends the notes covering today back on later messages. They are kept on the phone and are not uploaded to the Base server.
What the chat can never send, whatever you ask it: your location or any part of a route, any photo at all unless you attached it yourself or switched photo reading on as described above, the notes you type on a session or a goal, the words in a goal title, the names of individual foods, your name, or your email. Computing your splits reads the GPS track, and that happens on the phone; what leaves is a list of split times, never a coordinate.
The chat can propose changes. It can never make one. Every change is shown to you in full, with the before and the after on it, and waits for you to tap Apply.
Body fat from photos
This is the switch that decides whether your progress-photo archive is readable at all, and it is the only thing in Base that sends a photograph you did not hand over in the moment. It is off until you turn it on, under Settings › Privacy or from the card on the Measurements screen, and saying yes to AI for anything else does not switch it on.
It governs two features and nothing else: the weekly body fat estimate described here, and the assistant looking at your photos when you ask it how lean you are, described in the section above. Both send the same kind of thing to the same place, so they answer to one switch. With it off, neither can read a photograph for any reason.
With it on, once a week Base looks for the newest set of progress photos that has a front, a side and a back shot in it and has not been read yet. It resizes those three images on the device and sends them to Google's Gemini API, the way "How the AI features reach Google" describes, to be read for body fat. At most three images per run, never more than once a week. You can also ask for one by hand, which reads the same three photos.
What goes with them is text you could have typed yourself: your sex, age and height, your trend bodyweight, the date the photos were taken, which angle each image is, the body fat figure the tape formula already gives, and your previous estimate so the new one can be compared with it. Nothing else about the photos travels: not the file, not its name, not the photo library identifier, not the album, not the location or camera data attached to it, and not one other photo from your library.
What comes back is a percentage, a range around it, a confidence, and a sentence saying which anatomy it judged from. All four are stored on the phone. They are not synced to the Base server and not sent to the analytics service.
On Base's free AI the images pass through the Base server on their way to Google and are not stored there. With your own key they go straight to Google under your key and the terms you accepted for it. Either way Base keeps no copy anywhere but on the phone.
Turn it off and it stops that moment: no weekly run, no manual run, no photograph for the assistant, and no photograph read for any purpose. Estimates already taken stay on the phone.
Barcode lookups
Scanning a barcode sends just that barcode number to Open Food Facts, an open food database, to fetch the product. Nothing identifying you is sent. If the lookup fails or you are offline, the manual entry form opens instead: the goal was always to log the food, not to show you an error.
Searching for a food sends the words you typed to Open Food Facts as well, so a product the food database on your phone does not hold can still be found. The country your phone is set to goes with them, so the products sold there are listed first. Nothing else goes with a search, and with no connection the database on the phone answers on its own.
Map backgrounds
A workout with GPS is drawn on a real map, and the map background comes from your device's own map service: Apple Maps on iOS, Google Maps on Android. Displaying it is a network request for the map imagery of an area, made by the operating system, the same as when you open the Maps app.
Your route is not part of that request. It is drawn on top, on the device, after the background arrives. The map service is told which part of the world to send pictures of; it is not told where you ran, how fast, or that a workout exists.
With no network there is no background and the route still draws on its own.
Product analytics
Base records how the app is used, which screens are opened, which buttons are pressed, how far people get through signup, and when something fails, and sends it to PostHog, an analytics service. It is used to find what is broken and what is confusing, and to answer a support question when you send one.
It is tied to your account, not anonymous. Your email address and your display name are sent, so that a problem in the data can be matched to the person who hit it. Alongside them go the answers you gave at signup: your goal, how experienced you are, how you train, how you like to eat and where you heard about Base. So are the numbers you entered yourself, including your height, age, bodyweight and the calorie and macro targets the app worked out for you, plus counts of what you have logged.
An earlier version of this page said the analytics were anonymous. They were, and that made them useless: a funnel that says four people dropped at step nine and gives no way to find out who cannot answer the question it was built for. This paragraph replaced that one rather than sitting next to it.
What is never sent is anything read from Apple Health or Health Connect. Not your sleep, heart rate variability, resting heart rate, steps, energy burned or VO₂max. Apple and Google both forbid passing health data to a third party and Base does not do it. Also never sent: your GPS routes, your progress photos, the names of foods you log, your notes, and what you type into search.
This is not advertising, not sold, not shared onward with anyone, and not tracking you across other apps or websites. There is no advertising identifier and no ad SDK in the app.
Screen recording is off and the code to do it is not installed. Half of what is on screen in this app is a number about your body, so a session replay is the one thing that could not be made safe.
Settings › Privacy has the switch. Turn it off and nothing further is sent from that phone. Nothing in the app is a condition of it.
What is still not collected
In the app: no crash reporting service, no advertising identifier, no attribution SDK, no fingerprinting, no location tracking, and no third-party tracker beyond the analytics above. What the app does send when something goes wrong is one line saying that a screen crashed and which screen it was: no message, no stack trace, nothing about you.
Your GPS routes never leave the device by any route at all. Your progress photos are never uploaded to or stored on a Base server, and one optional feature can read them: the body fat estimator, which sends three of them a week to Gemini and is off until you turn it on in Settings.
Nothing that came out of your health app reaches the analytics service, a map provider, or any other company, ever. It goes to the private database under your own account, and to exactly two places besides: the endurance coach and the coach chat, both described above, both sending nothing until you use them and have said yes to AI, and both sending only what those sections say they send. Those are the only exceptions in the app and they exist because you said yes to them.
Deleting your data
Delete account permanently erases your account and everything in it, from the phone and from the server. It is immediate and it cannot be undone. It lives in Settings › Account & Backup.
Sign out is different and much less drastic: it clears the local copy on that phone only. Signing back in downloads it again.
Export produces your entire database as a single file, plus a CSV bundle. There is no lock-in mechanism here to defend; if you want to leave with your data, the export exists so you can.
Not a medical device
Base is a personal training log. It is not a medical device, it makes no diagnostic claim, and it gives no medical advice. Recovery scores, sleep scores, readiness assessments and the calorie and macro targets are training tools built on consumer wearable data and on numbers you typed in yourself, and consumer wearable data is not clinical data.
That includes the feature that comes closest to sounding medical. When five overnight readings move together against your own baseline, the app asks whether you want to change your status. It never names an illness and it cannot: those readings can tell a hard Tuesday from an easy one and they cannot tell a virus from either.
The AI coaches and the chat are the same. They plan training and food, they are told they are not doctors, and they will say when something needs a professional instead of guessing at it.
If a number here worries you, the correct next step is a doctor, not an app.
What to do next
If the interesting question is not what Base collects but why it computes what it computes, why every number shows its math covers the reasoning, and the screen-by-screen walkthrough shows the arithmetic in place.
Questions people actually ask.
Does Base sell or share my health data?
It is never sold, never used for advertising or marketing, and never sent to the analytics service. It is used to compute the numbers shown in the app. Two optional features can send some of it to Google's Gemini API, only when you use them and only after you have said yes to AI in the app: the endurance coach, and the coach chat. What each one sends is listed on this page and on the privacy screen inside the app. You can revoke health access at any time in your platform's health settings.
Does Base collect analytics?
Yes, product analytics, and there is a switch in Settings › Privacy. It is tied to your account rather than anonymous: your email address, your display name, your signup answers and the numbers you entered yourself, including height, age, bodyweight and your calorie and macro targets, are sent so a problem in the data can be matched to the person who hit it. Nothing read from Apple Health or Health Connect is ever in it, and neither is a route, a photo, a food name, a note or anything you type into search. There is no advertising identifier, no session recording and no cross-app tracking.
Are my progress photos uploaded?
Never. Progress photos are the one category of data that is explicitly excluded from sync, and they are never stored on a Base server. A copy of each is saved to a Base Progress album in your own photo library, because the operating system erases an app's storage when the app is deleted, and that copy is what survives a reinstall. It is your album, and if you have iCloud Photos on it syncs the way the rest of your camera roll does.
What happens if I delete my account?
Account deletion permanently erases your account and everything in it, from the phone and from the server. It is immediate and cannot be undone. Signing out is different: it clears the local copy on that phone only, and signing back in downloads it again.
Does the AI food scanner send my photos somewhere?
Only when you use it, and only after you have said yes to AI in the app. The plate photo goes to Google's Gemini API, on Base's free daily allowance or on your own Gemini key if you add one. No health data, no account details and no other part of your log goes with it.
[KEEP READING]
[FIELD NOTES]
Why Every Number in Base Shows Its Own Math
Every derived number opens a plain-English explanation of the formula that produced it, in the same words as the code comment next to it.
[BASE]
How Base Works: The Daily Loop and the Math
Three taps a day, one review a week, and a set of numbers that correct themselves. Here is the whole workflow, with nothing hidden.
[SCREENS]
The Dashboard: Energy, Training and Recovery
The home screen answers one question, what does today ask of me, and every number on it is derived from your own data.