What They Said, operated by Contave Technologies Inc, helps you record or import audio, organize recordings into categories, transcribe them, and search what was said by meaning. The app works by sending audio files you select to a hosted backend for storage, transcription, indexing, and search.
We collect the email address and password you provide when creating an account. Passwords are stored as password hashes, not as plain text. We also store account identifiers, display names if provided, authentication session records, session expiry times, and sign-in/session status needed to keep the app working.
When password recovery is enabled, we send your email address and a reset link to Resend to deliver the message. Reset tokens expire after 30 minutes and can be used only once. The database stores a token hash for verification and temporarily encrypts an unsent token for delivery retries, clearing it after delivery, use or cleanup. HMAC-derived account/IP keys support throttling; this table does not store raw addresses or IPs. Old throttle windows are periodically removed. Password change or successful reset revokes existing sessions.
When you import audio from Files, share audio into the app, or choose to upload an in-app recording, we collect and process the audio file you selected. We also store related recording metadata such as the original filename, title, source type, duration, language if available, file size, content type, created/imported timestamps, transcription status, and storage key.
The app does not request or collect location data.
We create and store transcripts, transcript segments, segment timestamps, generated summaries or labels, and vector embeddings used to support semantic search. Search queries are sent to the backend and to OpenAI to translate, embed, and rank relevant transcript passages. We do not keep a separate raw-query history. To provide stable result pages, we temporarily store account-bound result excerpts and context, a hashed query/scope identifier, and a library revision. These snapshots expire for access after 15 minutes and are removed by periodic cleanup. Stored diagnostics exclude raw query text and expansion terms.
User-created category names and recording/category associations are stored with your account. Deleting a category removes the association, not the recording.
We store usage-ledger records needed to manage transcription minutes, search credits, reservations, usage captures, refunds, free grants, purchased credits and monthly subscription allowances. These records may include recording IDs, transcription job IDs, amounts, grant and reservation identifiers, event types, timestamps, and metadata needed to maintain account quota. Request identifiers and hashed search settings prevent duplicate charges; completed result excerpts expire after 15 minutes, and request-status records become eligible for cleanup after 30 days. No raw-query history is added by this accounting.
When paid features are enabled, Apple processes purchases. We send Apple an app-account token based on your internal account identifier to associate the purchase with the correct account. Our backend verifies Apple-signed transaction and renewal information and stores product and transaction identifiers, billing periods, status, allowances and refund information. We do not receive your payment-card details. Limited App Store transaction references, subscription status/period metadata and notification-processing records remain after account deletion to prevent a purchase from being credited again and to reconcile accounting. Their local user-account link is cleared; raw Apple signed payloads and the former account identifier are not retained in these reference records.
The iOS app may cache library summaries and transcript details locally on the device to improve responsiveness. This cache is stored in the app's private application support storage and is tied to the backend URL and user identifier. It is removed from the device when you delete your account in the app.
Local microphone recordings, manifests and exports are kept separately in private per-account storage. Signing out stops capture and retains the local originals for the same account. Other accounts cannot browse them. Delete Local Copy removes a local draft; cloud recording deletion does not delete separately retained local or externally exported copies. Successful in-app account deletion attempts to remove the account’s local recordings as well as its cloud data and reports local cleanup failures. Exported copies must be removed from the chosen destination separately.
Our hosting providers may process technical logs needed to run, secure, debug, and maintain the service. These logs may include IP address, request timing and route, service status, error information, and infrastructure events. V2 also records provider model identifiers, token counts, attempt counts, latency and outcomes to measure costs and reliability. We do not intentionally log raw audio, passwords, session tokens, transcript text, or search-query bodies.
We store an account-linked record of whether and when you granted or withdrew consent to third-party AI processing, and which disclosure version you accepted. This lets us enforce your choice and demonstrate that processing was authorized.
The app does not include third-party advertising SDKs, ad tracking, cross-app tracking, contacts access, photo library access, camera access, or location access.
In-app recording requests microphone permission. Captured audio stays in private local storage until you explicitly choose to upload it; local recording does not itself send audio to OpenAI. Capture pauses when the app moves to the background. Local recordings are excluded from device backups. Exporting a copy through the share sheet sends it to the destination you choose, whose handling is outside the app.
These providers process data only as needed to provide the app's functionality and infrastructure.
We require any third party with whom we share user data — including these service providers, and any parent, subsidiary, or related entity that would have access to user data — to provide the same or equal protection of user data as stated in this Privacy Policy. Each is bound by the terms of its agreement with us to protect that data, to process it only on our instructions for the purposes described above, and not to use it for their own unrelated purposes. We do not share user data with any third party that does not meet that standard.
OpenAI, LLC is the app's third-party AI provider. Before the app uploads a recording or performs AI search, it presents an in-app disclosure and asks for your explicit consent. If you do not consent, you may still record locally, export local audio, and browse or delete existing account data, but uploading, transcription, re-transcription, and AI search remain disabled.
Depending on the feature you use, we send OpenAI:
We use this processing only to transcribe speech, support multilingual and meaning-based search, generate search indexes, and rank relevant results. OpenAI states that API data is not used to train its models by default. We do not opt your data into model training. OpenAI may retain API inputs and outputs in abuse-monitoring logs for up to 30 days, subject to its endpoint-specific controls and legal obligations. Where an OpenAI endpoint supports disabling stored application state, our requests disable it.
Earlier app builds did not explicitly disable application-state storage for transcript-enrichment requests made through OpenAI's Responses API. OpenAI's current documentation describes at least a 30-day application-state retention period for Responses requests made with the default storage setting. Build 3 disables that storage for new requests. This historical application state is separate from OpenAI's abuse-monitoring logs.
You can withdraw consent at any time in Account → AI Processing → Withdraw AI Consent. Withdrawal prevents future AI processing and cancels active transcription jobs. It does not itself delete recordings or transcripts already in your account; you can delete those individually or delete the account. A recording may contain other people's personal data or voices, so you must have the right or permission to upload and process every recording you select.
We do not sell personal data. We do not share data with third-party advertisers, and the app does not use your data for cross-app tracking.
We may share data with the service providers that operate the app, to comply with law, to protect the service from abuse, or to respond to support requests.
We use HTTPS for all network communication with the hosted backend. Authentication tokens are stored as hashes on the backend and in the device Keychain on your iPhone. Audio and transcript data are stored with managed hosting, database, and object-storage providers using restricted credentials. No system can be guaranteed completely secure.
The app is not intended for children under 13, and we do not knowingly collect data from children.
We may update this policy as the app changes. Material changes will be reflected in the published policy and App Store privacy disclosures before an updated app is submitted.
Contave Technologies Inc
support@contave.ca