Speakfirst Privacy Policy
Effective date: June 5, 2026 · Last updated: June 28, 2026
Speakfirst ("we", "us", "the app") is designed to be privacy-respecting by default. This Privacy Policy explains exactly what data the app handles, where it goes, and your rights. By using Speakfirst, you agree to this policy.
Plain-English summary. We do not run our own user database. Almost everything Speakfirst does runs on your iPhone. Two specific features send a small amount of data to an AI provider so they can work: (1) your text transcript of a speaking drill — never the audio — is sent to generate written coaching feedback, and (2) a photo you take to verify a custom activity is sent so the AI can confirm what's in it. Your microphone audio and workout video never leave your phone.
1. Data that stays on your device
The following is created and stored only on your iPhone and is never transmitted to us or to a third party:
- Your app-block selections and Screen Time configuration, managed by Apple's Family Controls / Managed Settings frameworks. Per Apple's design, your usage statistics are not accessible to us.
- Your speaking practice history, earned-minute wallet, emergency fund balance, streaks, XP, and level progress.
- Microphone audio. When you record a speaking drill, the audio is transcribed locally on your device by Apple's Speech framework. The audio file is held in a temporary location only long enough to transcribe and (optionally) let you play it back, and is removed when you leave the screen. Audio is never uploaded.
- Workout video. Camera frames used for rep counting are processed locally by Apple's Vision framework. No frames are recorded, persisted, or uploaded.
2. Face landmark data (on-device pose detection)
Plain-English summary. The workout coach uses Apple's Vision framework to estimate where your body's joints are in the camera frame so it can count push-ups, squats, and seconds of plank. Some returned landmarks describe facial feature positions. We use only joint geometry to determine pose; we do not perform face recognition, identification, or biometric matching. The numbers stay on your phone and are discarded when the next frame replaces them.
When the workout camera is active, the app invokes VNDetectHumanBodyPoseRequest. Coordinates are read from each video frame into in-memory variables, used to update the workout counter, and overwritten when the next frame arrives. We do not send pose or face landmark coordinates to our servers, OpenAI, RevenueCat, or any other third party, and we do not save them to disk.
3. Data sent to our AI provider (OpenAI, via a Cloudflare proxy)
Speaking-coaching feedback and optional activity-photo verification send limited data off-device through a Cloudflare Worker we operate. The worker only adds authentication and forwards the request to OpenAI. It does not log or store the contents of your requests.
- Speaking-drill coaching feedback. After your speech is transcribed on your device, the resulting text transcript (plus measured stats like words-per-minute and filler-word counts) is sent to OpenAI to generate written coaching feedback. The raw audio is never sent.
- "Other" activity verification. When you take a photo to verify a custom activity, that single photo is downscaled and sent to OpenAI's vision model so the AI can confirm what it shows. The photo is sent for that one analysis only.
We do not send any user account identifier, email, payment information, contacts, or location with these requests. OpenAI's privacy policy and API data usage policies govern how they handle the data they receive on our behalf.
4. Subscriptions
Subscription purchases are processed by Apple via In-App Purchase. We use RevenueCat to verify and manage subscription status. Apple shares an anonymous user identifier and purchase event metadata with RevenueCat — we do not receive your name, email address, Apple ID, or payment information.
5. Product analytics (first-party, privacy-respecting)
Speakfirst contains no third-party analytics SDKs, no advertising SDKs, no marketing trackers, and no crash-reporting services. We do not track you across apps or websites and we do not request the advertising identifier (IDFA).
We run minimal first-party product analytics to understand which onboarding steps are confusing or slow. This data flows only to a Cloudflare Worker we operate, lands in a Cloudflare D1 database under our account, and is never shared with anyone else.
6. Permissions the app requests
- Screen Time / Family Controls — to block apps you select when your earned-minute budget runs out.
- Camera — for Talk to Camera drills, on-device workout rep counting, and optional activity verification photos.
- Microphone — to record short speaking drills. Audio stays on your phone.
- Speech recognition — so Apple's on-device speech recognizer can transcribe your speaking drills locally.
- Notifications — to remind you about practice and budget status.
You can revoke any permission at any time in iOS Settings.
7. Children's privacy
Speakfirst is not directed to children under 13. We do not knowingly collect personal information from children under 13.
8. Your rights under GDPR
If you are in the European Economic Area, UK, or Switzerland, you have the rights of access, rectification, erasure, restriction, portability, and objection. Because we do not maintain a user database, almost all personal data lives on your device — uninstalling the app removes it.
9. Your rights under CCPA/CPRA
We do not sell or share personal information for cross-context behavioral advertising.
10. Data retention
On-device data exists only as long as the app is installed. Product analytics events in Cloudflare D1 are retained for up to 12 months, after which they are deleted.
11. International transfers
Apple, RevenueCat, Cloudflare, and OpenAI may process data in the United States and other countries. See their respective privacy policies for details.
12. Changes to this policy
We may update this policy. Material changes will be reflected by updating the "Last updated" date at the top of this page.
13. Contact
For any privacy questions or to exercise your rights, contact:
ausarbekovadilet@gmail.com