Your information, explained

Privacy policy

What is processed for practice, what stays on your phone and how to manage or delete it.

This policy explains how PrepPlease handles information when you use the iPhone app or these information pages. The controller is Martin Tesar, reachable at tesar.cze@gmail.com.

Information you provide

The app saves your interview setup on your device and, when you choose account profile saving as described below, on our server: the name and address preference you choose, role, timing, relevant experience, background, interview brief, practice goal, language and reminder choice. Supplying a name is optional. Please anonymize customer details and avoid sensitive or confidential information that is not needed for practice.

Before your first interview under the current disclosure, the app asks permission to send voice, interview setup and transcripts to Google (Gemini) for conversation, captions and feedback. Acceptance covers that and future interviews on this device and is saved with the disclosure version and acceptance time. Declining prevents AI interview sharing; your profile remains where you chose to save it. Withdraw permission in Settings → Privacy, or choose Stop sharing during an interview to withdraw permission, stop sending and request cancellation. The next interview then asks again. Signing out or deleting the account clears this device’s permission. A material change to the recipient, shared data or purpose requires a new permission request. If the connection is lost, the server may finish processing data already sent. Already sent data cannot be recalled. While interview permission is enabled, your voice and relevant setup go through our server to Google Gemini for live conversation, transcription and AI feedback. A separate Google transcription stream may provide live captions. An optional spoken review note asks separate permission before recording and is sent to Google (Gemini) for transcription; you can cancel before sending or write instead; the resulting note is temporary and is discarded when you leave the review.

Recordings and saved reviews

Our application server holds interview audio and transcripts in memory to run the conversation and produce feedback. It does not write interview recordings to its application disk. A failed feedback request may retain the recording on the connected session for a retry window of up to two minutes. If the connection is lost, the server may finish feedback processing within the existing time limit so you can recover the result. The application releases in-memory audio and transcript references when processing finishes, fails or the retry window expires. This describes our application’s handling, not Google’s independent processing or hosting-provider logs.

To recover feedback after a lost connection or app restart, our server makes the generated review available for 24 hours, linked to your device account and interview attempt. This review may contain transcript excerpts and other interview content. Recovery requires the device account’s access credential. Access expires automatically after 24 hours. Expired content is removed by scheduled cleanup, normally within a minute, or at startup if the server was offline. Deleting your account also removes the recovery copy. Financial-ledger backups exclude the generated review content; recovery may therefore be unavailable after a disaster restore. Separate hosting-provider snapshots, if enabled, are subject to their own retention schedule.

Your latest completed review, candidate recording, transcript when available, feedback rating and the interview setup used for that review are saved on your device. A new completed review replaces the previous one. Use Settings → Privacy → Delete saved feedback to remove that review and recording, or Settings → Delete account to also remove your local practice setup. Device backups and operating-system storage are subject to your device and backup settings.

Accounts, purchases and usage

You can onboard and try the free interview without signing in. Sign in with Apple is required before a new purchase and is also available in Settings to link or recover an account. We do not request your Apple email address or full name. We verify Apple’s authentication response and keep a derived account identifier so you can recover your remaining minutes and saved profile by signing in with the same Apple account.

When you choose Sign in with Apple in the updated app, we save your practice profile to that account. If you are already signed in and have no saved account profile, choose Save profile to my account in Settings to enable this. The saved profile includes your chosen name and address preference, role, goal, timing, language, career situation, experience, background, job description, meeting details, interview instructions and setup-completion status. We encrypt the profile on our server and update it when you edit your setup. You can recover it after reinstalling or signing in on another iPhone. Guests keep their setup on the device; no guest profile is uploaded for account recovery. Profile saving does not upload your saved feedback, recordings, reminders or analytics preferences. If two devices change a profile, the app asks which setup to keep. Signing out clears the local setup and feedback on that iPhone but preserves the saved account profile and minutes. Profiles remain until replaced or the account is deleted; database backups can contain encrypted profile copies.

Each installation keeps its own random access credential in secure device storage. Normal authentication stores a credential hash on the server. For reliable sign-out retries, the server retains an encrypted replacement guest credential until it is linked to an Apple account or the associated account is deleted. Apple refresh tokens are also encrypted on the server for credential validation and revocation. The app’s random account identifier, not your Apple email address, is used in RevenueCat for purchase verification. Earlier installation identifiers remain associated with the account to prevent duplicate credits and process refunds correctly.

Our persistent access ledger records the device identifier, creation time, free-interview use, available balance, session identifiers and status, reserved and charged seconds, and purchase or refund transaction references and times. We also store RevenueCat event identifiers, processing times and fingerprints to prevent duplicate processing; we do not persist raw webhook payloads in that ledger. Apple and RevenueCat process purchase and device information for store access, verification and refunds. RevenueCat’s hosted paywall also records when its purchase offer is viewed or closed and related purchase-flow interactions, linked to the app user identifier, to measure how the offer performs. We do not receive your payment-card details.

Usage and purchase records maintain balances, prevent duplicate charges and abuse, support purchase queries and meet applicable legal obligations.

Delete your account

In the app, choose Settings → Delete account and confirm. Deletion revokes access on linked installations, removes the Apple account association, active account, saved server profile, practice usage and recoverable server feedback, and clears saved local setup, review and recording on this device. Other devices are denied server access; locally saved reviews on those devices are not remotely erased. Unused minutes are forfeited; they cannot be restored to the deleted account. Deletion is not an automatic refund request. Cancelled reminders may leave previously imported calendar events, which you can remove in Calendar.

We request revocation of Sign in with Apple authorization. If Apple is temporarily unavailable, the account is still deleted and an encrypted token is retained in a retry queue until revocation succeeds. Limited transaction and event records, together with a deletion marker, remain to prevent replaying purchases and to handle refunds, disputes and applicable legal requirements. Existing backup copies are not immediately rewritten. Apple, RevenueCat, Google and infrastructure providers may retain information under their own terms; this action does not claim to erase their independent records. Contact support for other data requests.

Service providers

Google Gemini: processes voice, interview context, transcripts and generated feedback. Google’s paid Gemini API terms state that prompts and responses are not used to improve its products; they also permit limited safety/security logging and legally required disclosures. Unpaid API services can have different data-use terms. Whether Google classifies API use as paid depends on the provider project’s active billing configuration, not whether you bought practice minutes. See Google’s Gemini API terms and Google’s privacy policy.

RevenueCat and Apple: process device/app-user identifiers, purchase history and related technical information for purchase verification and restoration. Apple also authenticates your Apple account when you choose Sign in with Apple. RevenueCat also uses purchase records and paywall interactions for its purchase and offer analytics. These RevenueCat events are separate from the optional PostHog setting described below; they are not used by us for advertising tracking. See RevenueCat’s privacy policy and Apple’s privacy information. RevenueCat describes processing end-user information on the app developer’s behalf and hosting its customer data in the United States.

Hosting and communication: the server hosting infrastructure processes connection information, including IP addresses, needed to deliver and protect the service. Infrastructure providers may keep operational logs. If you email support, we receive your email address and the contents of your message and use our email provider to respond. Do not send unnecessary interview recordings or sensitive information.

Providers may process information outside your country, including in the United States. Their applicable terms and data-processing arrangements govern that processing. We do not promise that all data stays in one country.

Optional analytics

Usage sharing is off until you accept the optional first-launch invitation or turn it on in Settings → Privacy. Skip leaves sharing off. The invitation does not repeat after your choice. Saved opt-outs remain off. Older automatically enabled preferences are reset to off and require a new choice. If enabled and configured, the app sends PostHog’s EU service a separate random analytics identifier, screen/action events and limited metadata such as app version, practice timing category and billing environment. The app’s analytics allowlist excludes your name, employer, interview text, audio, transcript and feedback content. Session replay is disabled. The choice is saved on your device. Turn the switch off to stop future analytics sending and discard queued usage events. Development builds do not send these events. See PostHog’s privacy policy.

These support, privacy and terms pages contain no analytics scripts, cookies or embedded tracking resources.

Purposes and your choices

We process the information needed to deliver the practice service and purchases you request, maintain security and accurate balances, understand purchase-offer performance, provide support, and comply with applicable legal obligations. Where applicable, the legal bases are performance of our agreement with you, legitimate interests in operating and protecting the service, and legal obligations. Optional usage analytics use your consent, which you can withdraw in Settings → Privacy without losing practice access. AI interview permission is remembered on this device and can be withdrawn using the controls above. Optional spoken review notes request separate permission each time.

Depending on applicable law, you may request access, correction, deletion, restriction or portability of your personal data, or object to processing. Email tesar.cze@gmail.com with your Support ID if available; never send your device access credential. We may need to verify the request and explain any legal exceptions. You may complain to your local data-protection authority.

Audience and changes

PrepPlease is intended for adults aged 18 or older preparing for professional interviews. It is not intended for children. Contact us if you believe a child has provided personal information. We will update this page when material data handling changes.