Privacy Policy
CallWaNote turns compatible call recordings into transcripts, speaker labels and summaries. To do this, the app sends the recording you choose to the conversion service you select in the app: the CallWaNote processing server (Server, the default), or a direct provider (GPT, OpenRouter, Qwen, Google or Grok) that your phone contacts itself using your own API key. Direct providers handle your data under their own terms. Google Drive upload is a separate, optional feature. The app has no account or sign-in.
1. Information the app accesses and processes
Call recordings and file information
When you allow audio access or choose a recording source, CallWaNote reads compatible call recording files. Recordings can contain the voices and personal information of you and other people in the conversation. The app also reads file names, sizes, dates and durations, and may find phone numbers or contact names in a file name. CallWaNote never modifies the original recording.
Contacts
If you allow Contacts access, the app reads your phonebook on the device to show people, match call recordings to contacts and display names. It keeps a private copy of the last contact list on your device only while Contacts access is granted, and deletes that copy when access is removed. Your contacts list is not uploaded. Linked contact names are used as recognition hints only if you turn on that optional setting. You can also pick a contact as the name of a speaker in a call note; the app never names a speaker from a phone number or file name alone.
Your voice sample
To label which speaker is you, the app lets you, optionally, record a short voice sample using the microphone, only while the app is open and only after you start the registration. You can skip it; the app and conversion work without it, and marking a speaker as yourself in a call note also creates your voice reference. The sample is converted on the device into a voice reference that is encrypted with an Android Keystore key and stored in app storage that is excluded from backup. The raw sample is not kept, and neither the sample nor the reference is uploaded, exported or backed up. When you mark a speaker in a call note as yourself, the app also derives voice features for that speaker from that call on the device and adds them to the same encrypted reference (up to 50, oldest replaced first) to recognize you better in later calls; no audio is kept. Those features belong to your voice, not to the note: they stay when you delete the note or reprocess recordings, and are removed when you change that speaker back, or delete them in Settings. Deleting your voice reference removes all of them.
Contacts' voices (optional)
If you turn on Recognize contacts' voices (off by default), picking a contact as a speaker's name also derives voice features for that speaker from that call on the device and stores them for that contact (up to 20 per contact and 200 in total, oldest replaced first), encrypted with a separate Android Keystore key in app storage that is excluded from backup. The app then uses them on the device to name that contact in other call notes when the voice matches reliably; you can change any such name. These features are never uploaded, exported, backed up or included in Drive files, and we do not collect them. They belong to other people, so get their consent where the law requires it. They belong to that contact's voice, not to the note: they stay when you delete the note or reprocess recordings, and are removed when you change that speaker's name, delete all of them in Settings, or turn the setting off and choose to delete them. Deleting your voice reference also deletes them.
Language settings and personal vocabulary
The app uses your selected call language, optional personal vocabulary, work context and correction suggestions to improve recognition. With Server, xAI and OpenRouter, and with direct OpenRouter and Grok requests, the words needed for a conversion task, including a linked contact name if you turned on that setting, are sent with that task. GPT, Qwen and Google receive the selected call language but not these words.
Your API key
A direct provider needs an API key from your own account with that provider. The app encrypts the key with an Android Keystore key and stores it in app storage that is excluded from backup. It is sent only to that provider, to verify it and to authorize your requests, and is never sent to us.
Conversion time and device identifier (Server only)
The app has no user account. When you use Server, it creates a random installation identifier that is encrypted with an Android Keystore key and excluded from backup, and uses it to hold your remaining conversion time on our server. To give the free starting time only once per device, the app computes a one-way digest of your Android ID on the device and sends only that digest over HTTPS. The server turns it into a keyed hash (HMAC) and keeps only that hash with the grant time. The raw Android ID never leaves your device and cannot be recovered from the stored value. Clearing app data removes the installation identifier and its balance; reinstalling the app does not grant the free starting time again.
Direct providers use no conversion time. If you select one during setup and never use Server, none of this is created or sent. If you switch from Server to a direct provider, the records already on our server remain as described in section 3.
App and device integrity (Server only)
When you use Server, the app uses Google Play Integrity to let the server confirm that requests come from the genuine CallWaNote app on a genuine device. Google provides the verdict to our server for that purpose. Reward and conversion requests also carry a request identifier, recording duration and job status needed to deliver results and prevent abuse.
App version check
With every conversion service, the app asks our server for the minimum supported app version. This request carries no recording, transcript, API key or installation identifier. As with any internet request, our server receives your IP address.
2. How conversion works
With every conversion service, the app first compresses the recording to mono audio and removes long silent sections on your phone. Matching an anonymous speaker to "Me" and related-content search also stay on your phone. Changing the conversion service applies to recordings that have not started; one already started continues on its original service. Conversion never switches to another service on its own: if the selected service cannot be used, the queue stops and the app tells you.
Server (default)
The app uploads the prepared audio to cwn-api.garhi.io over an encrypted connection. The server transcribes the speech, separates anonymous speakers and writes a summary, then returns the results to the app. The summary step receives the transcript text, not the audio.
Server conversion is charged in conversion time by the original recording length, rounded up to seconds. Updating only the summary of an already converted recording, which happens automatically after you edit its transcript or speakers, uses a tenth of that length (rounded up, at least one second). Uploads may be queued or retried if the connection or a processing service is interrupted.
Direct providers (GPT, OpenRouter, Qwen, Google, Grok)
Your phone sends the prepared audio for transcription and speaker separation, then the transcript text for the summary, straight to the provider you selected, under that provider's terms. Neither passes through the CallWaNote server. The provider bills your account with it, and a retried request may be billed again. Direct providers use no conversion time, rewarded ads or recharge notices.
Recordings are not split: one over the provider's size or length limit fails before upload.
- GPT: sends data to the OpenAI API.
- OpenRouter: sends data to OpenRouter, which routes each request to the model provider that performs the work.
- Qwen: sends data to Alibaba Cloud's international service (dashscope-intl.aliyuncs.com) and requires a Singapore-region key. To transcribe a recording, the app uploads it to Alibaba's temporary storage, where it stays for 48 hours. There is no way to delete it from that storage.
- Google: sends data to the Gemini API. The app asks Google to delete the uploaded audio file after transcription and asks it not to store the transcription request. With a free-tier key, Google may use what you send to improve its products.
- Grok: sends data to the xAI API (api.x.ai), run by SpaceX Super Intelligence LLC, whose default endpoint does not guarantee a processing region. xAI says it does not train on API requests without your permission and, by default, keeps requests and responses for 30 days for abuse auditing. Its API terms are written for business customers and ask that personal data be sent only with Zero Data Retention, a team setting in the xAI Console. Recordings usually contain personal data, so check those terms and that setting before you use Grok.
Google Drive
Conversion and Google Drive upload are separate actions. Using conversion does not give any conversion service access to your Google Drive.
3. Retention and deletion
- Audio and transcripts on the CallWaNote server: the server does not write uploaded audio, transcripts or summaries to disk, and does not put their contents in its logs. A successful result is kept only in server memory for up to six hours so that a retried request does not repeat the work, and is discarded when the server restarts.
- Failed provider call diagnostics (Server only): when a call to an external provider fails during conversion, the server keeps for up to 30 days the time, request ID, app version, call target, provider and model, failure type, response status and duration and, for a failed speech conversion, the language code, recording length and the SHA-256 hash of the recording file. It does not store recordings, transcripts, summaries, phone numbers, file names or device identifiers.
- Account-free records we do keep (Server only): the installation identifier, remaining conversion time, ad reward and reservation records, per-job charge records with a one-way hash of the job input (not the content), and the keyed duplicate-grant hash described above. These contain no recordings, transcripts or summaries.
- Processing providers used by Server: see section 6. Their handling of the data they receive is governed by their own terms.
- Direct providers: what a provider keeps, and for how long, is governed by its terms. We never receive this data and cannot delete it, and deleting a note in the app does not delete anything at the provider. To delete data held by a provider, request it from that provider. Audio in Qwen's temporary storage stays for 48 hours and cannot be deleted.
- Your API key: stays on your device until you delete it or change the conversion service; after a change, it is removed once recordings already in progress with that provider have finished. With a direct provider selected, open its API key entry in Settings and choose Delete key. Settings > Privacy and storage > Delete all app records, clearing app data and uninstalling the app also remove stored keys. Deleting a key in the app does not revoke it at the provider.
- Your device: recordings, transcripts, summaries and edits are stored in the app on your phone. Deleting a note in the app removes its analysis, edits, summaries and the app's audio copy; your original recording and any Drive copies are kept. Settings > Privacy and storage can also delete all app records. Android backup of app data is turned off.
To ask about server records connected to your installation, contact the developer as described in section 12.
4. Google Drive integration and Google user data
Optional Google OAuth access
If you connect Google Drive, Google handles sign-in; CallWaNote never receives your Google password. Drive is optional and not required for conversion.
Permission and purpose
CallWaNote requests https://www.googleapis.com/auth/drive.file, which lets the app create and manage only the files it creates (or that you explicitly select) in your Drive. Once connected, the app automatically uploads your existing and new recordings to that same Google account: the original audio and one metadata file with recording information, transcript timing, speaker labels, any memos you add to conversation segments, the linked call and the summary when available. You can disconnect Drive in Settings at any time, and a manual Restore only pulls back missing recordings and notes that the app created.
The app does not upload embeddings, voice features, credentials or your personal vocabulary to Drive.
Limited Use
Google user data obtained through Google APIs is not sold, used for advertising, or used for unrelated profiling or marketing. Our use and transfer of information received from Google APIs complies with the Google API Services User Data Policy, including the Limited Use requirements.
Disconnecting
You can disconnect Drive from the app or revoke access in your Google Account settings. Disconnecting does not delete files already stored in Google Drive, and deleting a local note does not delete a separate Drive copy.
5. How data is used
We use this information to find and organize recordings, convert them, label speakers and timestamps, show summaries and search results, keep track of your conversion time when you use Server, provide upload status, prevent abuse and respond to support or security issues. We do not use recordings, transcripts and summaries for advertising, marketing or to train our own models. A direct provider's use of what it receives is governed by its terms; see section 6.
6. Sharing and processing providers
With Server
For Server conversions, audio is sent to xAI for transcription. If fallback transcription is needed, audio is sent to AI models through OpenRouter; transcript text is also sent there for summaries. OpenRouter routes each request to the model provider that performs the work. Model providers can change over time, so the providers handling your data are those serving the request at that moment. These providers may process data in countries other than yours. We choose the models used, but each provider's own terms govern how it handles a request; review the xAI API terms and OpenRouter privacy policy for details.
With a direct provider
The recording and transcript text go straight from your phone to the provider you selected, under the terms of your account with that provider, as described in section 2. The app fixes which models it requests, but we are not a party to that relationship and do not receive the data. Providers may process data in countries other than yours. Please review your provider's terms and privacy policy before selecting it, including whether it may keep your data or use it to improve its products.
Other disclosures
We may disclose information where legally required. Google Drive files are sent only to the Google account you authorize. CallWaNote does not sell your recordings, transcripts, summaries, contacts, vocabulary or Google user data.
7. Advertising
CallWaNote shows ads from Google AdMob: rewarded ads that add conversion time (Server only), and banner ads with every conversion service. AdMob may process information such as IP address, device or advertising identifiers, app interactions and diagnostics for ad delivery, measurement and fraud prevention. In the European Economic Area, the United Kingdom and Switzerland, the app asks for your consent through Google's User Messaging Platform before requesting ads, and you can change your choice later in Settings under the privacy options entry, which appears where consent is required. A verified reward is confirmed to our server by Google (server-side verification) so the time can be added once.
Recording audio, transcripts, summaries, contacts and Drive contents are not given to advertising providers. See the Google Privacy Policy for Google's processing.
Usage statistics (Google Analytics for Firebase)
The app uses Google Analytics for Firebase to understand how the app is used and to measure advertising, for example whether people who install the app from an ad finish setup, get notes and add conversion time. Google Analytics collects an app instance identifier, the Android advertising ID, approximate location derived from your IP address, device and app information (such as device model, Android version, app version and language), app lifecycle and screen views, and AdMob ad impressions. The app adds only these events, with category values: setup started and finished, the first recording found (with its source type), a note completed (conversion service, whether it has a summary and a duration range), a conversion failure (service and failure category), a shortage of conversion time (required time range) and a verified ad reward (minutes added). Data is sent over encrypted connections.
The app never sends recording audio, transcripts, summaries, memos, file names, phone numbers, contact names, voice features, API keys, search terms or Drive contents to Google Analytics. Consent follows the advertising consent above: in the European Economic Area, the United Kingdom and Switzerland, your choice in Google's consent form decides whether advertising storage, user data for advertising and ad personalization are allowed; elsewhere, analytics and advertising storage are allowed by default and ad personalization follows Google's EU user consent policy. You can turn collection off in Settings under Privacy and storage with Send usage statistics, change your advertising consent under the privacy options entry where it appears, and reset or delete your advertising ID in Android settings.
8. Permissions
- Audio files (read media audio / read storage): find and read the call recordings you allow.
- Contacts: show people and match recordings to them on your device.
- Microphone: record the voice sample you start, while the app is open.
- Notifications: show conversion progress and, with Server, notices about low conversion time.
- Display over other apps: requested during initial setup. With Server, it shows a recharge notice during automatic conversion when conversion time runs out while the app is in the background, only outside the lock screen and other full-screen apps and ads. With a direct provider, no such notice is shown.
- Ignore battery optimization and foreground service (data sync, media processing): keep conversions and Drive uploads running while the screen is off.
- Internet and network state: upload recordings to the selected conversion service, receive results and optionally wait for Wi-Fi.
9. Security
Data sent to the server or to a direct provider travels over encrypted connections. With Server, the server accepts only requests from genuine installations verified through Play Integrity, and it does not store recordings or transcripts on disk. Your API key is stored encrypted on your device. No method of storage or transmission is completely secure.
10. Your choices
- Allow or deny each permission; the app does not bypass them.
- Choose the conversion service, and add, replace or delete your API key.
- Decide which recordings to convert, and pause or cancel a conversion.
- Turn optional contact-name hints, correction suggestions and contact voice recognition on or off, and delete learned contact voices.
- Delete notes, your voice reference or all app records in the app.
- Connect or disconnect Google Drive.
- Change your advertising consent where it is offered.
- Turn Send usage statistics off in Settings under Privacy and storage, and reset or delete your advertising ID in Android settings.
11. Children and third-party services
CallWaNote is not directed to children. You are responsible for making sure you are allowed to record and process the conversations involved. Google Drive, AdMob, Google Analytics for Firebase, OpenRouter and its providers, OpenAI, Alibaba Cloud, the Gemini API and your device maker have their own privacy policies.
12. Changes and contact
We may update this policy when features, providers or legal requirements change, and will update the date above. For privacy questions or requests about server records, please use the developer contact published on the CallWaNote Google Play listing.