Privacy
KhutbahBridge is built in Toronto, Canada. This page explains what the current service handles, why it is needed, where it goes, and what choices you have.
Live listening
When you press Start and allow microphone access, live audio is sent to Soniox for machine transcription and translation using its United States real-time service. KhutbahBridge does not store raw microphone audio. The audio passes transiently through KhutbahBridge’s same-origin relay before reaching Soniox so provider results can be observed on the server. The relay does not add microphone audio or transcript content to application logs or storage.
The generated text can contain mistakes, especially for names and quotations.
When you read Arabic speech in English, KhutbahBridge also sends each finished Arabic sentence, with the few sentences before it, to OpenAI while you listen, so the English you read follows the meaning rather than the Arabic word order. OpenAI receives transcript text, never microphone audio. If OpenAI does not answer within a few seconds, you see Soniox’s translation instead. When the app recognises a recited ayah, it shows that ayah’s verified translation in place of this English.
These requests ask OpenAI not to store the response (store: false). OpenAI may still keep abuse-monitoring logs for a limited time under its data controls. OpenAI
Your choices
You can listen without an account. You decide whether to grant microphone permission, and you can pause or stop at any time. If you do not want audio sent to Soniox, do not start live listening.
Unsaved and saved transcripts
Finalized unsaved text may stay in this browser for up to 24 hours so a reload does not erase completed work. A transcript reaches the private Supabase database only after you sign in and choose Save. A saved transcript remains until you delete it or delete your account. Where infrastructure backups exist, backup copies may take longer to expire.
Your choices
You can review or discard the local recovery copy, clear this site’s browser data, copy or export a transcript, delete an individual saved transcript, or delete your account.
Accounts and Companion
Supabase provides account sessions and stores private account records. If a third-party sign-in option is offered and you choose it, that provider handles the information needed to complete sign-in.
When you submit a Companion question, KhutbahBridge may send the question, bounded recent conversation context, and needed excerpts from an attached saved transcript to OpenAI. The request setsstore: false, which turns off ordinary response storage. OpenAI says eligible requests may still use encrypted, GPU-local prompt-cache state for up to 24 hours. Its default abuse-monitoring logs are normally retained for up to 30 days, with limited longer-retention exceptions for legal obligations or protection against abuse. KhutbahBridge stores your Companion conversations privately. For reliable recovery, that can include your question, the turn status, and any already-checked answer blocks even when a turn fails, is stopped, or has an uncertain outcome.
Your choices
You choose whether to sign in, use Companion, or attach a saved transcript. You can remove an attachment for future turns, delete a conversation, sign out, or delete your account.
Exact Qur’an passages
When a Companion answer contains Arabic script, KhutbahBridge may request Quran Foundation’s fixed, validated Qur’an corpus and compare the answer with it in server memory. The fixed corpus request contains no Companion question, answer, transcript, verse guess, or account identifier. A match only blocks unverified source wording; a no-match lets ordinary Arabic or du’a continue. The corpus and comparison result are not stored, sent to OpenAI, or returned to your browser.
When a verified Qur’an reference is needed, the KhutbahBridge server requests the exact Arabic passage and transliteration from Quran Foundation, together with the meaning in the selected answer language when a reviewed edition is available. Companion history stores only the numeric passage reference and requests the passage again when you return; it does not store the Qur’an, translation, transliteration, or footnote text.
During live listening, Qur’an recognition is available only in the same-origin relay mode. Finalized Arabic source tokens are compared in server memory with a bounded exact-source index. KhutbahBridge stores only content-free session counters and verse identities needed to prevent duplicate delivery; it does not add the source tokens or Qur’an passage bodies to recovery, saved transcripts, analytics, or ordinary logs.
Your choices
Qur’an blocks are for in-app reading and source inspection. Their provider text is excluded from KhutbahBridge copy, share, print, PDF, model, and saved-history paths. You can open the named source page for the displayed Surah and Ayah range.
Feedback and product health
Feedback may include a rating, category, optional message, optional email, and bounded technical details. It is stored in Supabase for support and product improvement. KhutbahBridge also keeps limited first-party product-health events and content-free Companion usage totals. Older Redis Companion totals expire after 35 days. When usage accounting is enabled, content-free listening duration, question counts, model token totals, and estimated provider costs are kept in Supabase for up to 90 days, with daily cleanup. Account usage is tied to your account; guest usage uses a pseudonymous browser identity. These records help enforce allowances and improve service reliability. Automated expiry for feedback and product-health events is not yet implemented. Transcript, chat, and audio content are not placed in those analytics or ordinary operational logs.
Your choices
Feedback is optional, and you may omit your email. Do not place private information in a feedback message. You can contact us directly instead or ask us to remove feedback you submitted.
Cookies and browser storage
KhutbahBridge uses an essential, random, HTTP-only cookie for abuse and rate-limit protection. It lasts 30 days and renews while this browser is in use. A separate essential, signed usage cookie lasts 35 days and renews while this browser is in use, so guest listening can have a monthly allowance. Signing in uses Supabase session cookies. Local browser storage holds your theme preference, the temporary transcript recovery described above when available and, in Companion, a question you have typed but not sent, so that leaving the page does not lose it. That question is restored for up to 24 hours and discarded after that when Companion next opens; sending it, starting a new conversation or signing out from Companion clears it. There are no advertising or cross-site tracking cookies.
Your interface language preference is saved in an essential first-party cookie in this browser. Use device language removes that preference. Your reading language is a separate choice.
Your choices
You can use public listening without an account. You can sign out or clear this site’s cookies and storage in your browser. Clearing local storage also removes any unsaved recovery copy on that device.
On iPhone
The iPhone app keeps two items in this iPhone’s Keychain, readable only on this device and never synced to another: your account session while you are signed in, and an anonymous listening credential the server issues so it can apply its listening limits to this iPhone.
If you have not saved a transcript when listening ends, the app keeps its finished text in a file on this iPhone for up to 24 hours, so it is not lost. The file is excluded from backups and is removed when you save or discard the transcript, when the 24 hours pass, or when you sign out or change account. The app does not store microphone audio.
Your choices
Deleting your account in Settings removes your account and saved data from our servers, and the account session and recovery file from this iPhone. The anonymous listening credential is not part of your account, so it stays on this iPhone. Deleting the app removes the recovery file. iOS keeps Keychain items after an app is deleted, so if you install the app again, its first launch removes the session and the listening credential before anything reads them.
On iPhone, Settings › Consent withdraws each consent.
Service providers and cross-border processing
KhutbahBridge relies on these service providers, including providers used only when their optional feature is enabled:
- Vercel for application hosting and operational delivery.
- Soniox for live speech transcription and translation.
- Supabase for authentication, saved records, and feedback.
- Upstash for content-free rate, capacity, budget, and recovery controls.
- OpenAI for explicitly used Companion and model-assisted reading features.
- Sentry for error reports: the kind of error, where in KhutbahBridge’s code it happened, the page path without its query, and the browser, operating system and app version. Reports from your browser pass through KhutbahBridge first, so Sentry does not receive your IP address. Transcript, question, answer and audio content, email addresses and account details are removed before a report is sent.
- Quran Foundation for Companion’s in-memory Qur’an source-integrity check when the server is configured for Quran Foundation’s Production Content API, and for exact passages and the matching Arabic display font when Qur’an blocks are enabled.
Except for Quran Foundation, each of these providers handles this information for KhutbahBridge under terms that let it use the information only to provide, secure and support its service, to prevent abuse or as the law requires, and that require it to protect the information at least as this notice describes. Quran Foundation receives no account details, audio, transcript text or questions from KhutbahBridge; when a Qur’an font loads from its delivery network, its own privacy policy covers the connection details it sees.
Some processing occurs outside Canada and may be subject to the laws of those jurisdictions. The fixed integrity corpus and, when passage display is enabled, exact Qur’an passage content are requested by the KhutbahBridge server. The fixed corpus request carries no microphone audio, transcript text, Companion question or answer, verse guess, or account identity. When a Qur’an block appears, your browser also requests one fixed font file from Quran Foundation’s delivery network, which receives ordinary connection information such as your IP address and browser details. No microphone audio, transcript text, Companion question, verse reference, or account identity is placed in that font request.
Your choices
Each provider receives only the information needed for the feature you choose. You can avoid optional account, feedback, and Companion processing by not using those features.
Access, correction, and contact
Administrators can see account email addresses, signup and sign-in dates, and limited activity metadata such as saved-item counts and recorded service usage. Ordinary page visits are not tracked. While KhutbahBridge is in early release, the people who run it may also read saved transcripts and Companion conversations to find and fix problems and to prevent misuse. That content is never shared with anyone else, and it is never sent to an analytics or error-reporting service. Each time it is opened, the access is recorded. Information may also be disclosed when required by law or needed to protect the service and its users.
Your choices
You may ask what personal information KhutbahBridge holds about you, request a correction, raise a privacy concern, or ask for help deleting data. Email khutbahbridge@gmail.com. The public contact address is 955 Bay Street, Toronto, Ontario, Canada. No apartment or unit is published.
Changes to this notice
This page will be updated when a new feature materially changes how personal information is handled. The effective date at the top shows the current version.
Your choices
If you do not agree with a changed practice, you can stop using the affected feature and delete saved data through the app or by contacting us.