Privacy Policy

Effective: 26 August 2026  ·  Last updated: 26 August 2026  ·  Describes app version 2.0.19 (versionCode 75) and this website.

This policy is written to match the software as shipped: Android flavors play and standard (companion) — same package id; Together, Cloud Ask, and Cloud Listening; the App does not request REQUEST_INSTALL_PACKAGES — plus this marketing website. F-Droid is not a shipping flavor. If a screen in the app is shorter than this document, this document controls for disclosure. We do not collect categories of data that are not listed here.

Contents 1. Who we are and how to contact us 2. Scope (app vs website) 3. Short summary 4. What we do not collect 5. Data that stays on your phone 6. Android permissions 7. Online Mode (fail-closed network gate) 8. Together accounts (optional; Play and standard) 9. Optional model downloads (Hugging Face and gated Cloudflare) 10. Windows PC pairing (not used) 11. Microphone, speech, and Listen 12. This website and Tawk.to chat 13. Sharing, sale, advertising, and processors 14. Retention, security, and backups 15. Your rights (access, export, deletion, CCPA, GDPR) 16. Children 17. International transfers 18. Changes 19. Encryption and US export laws

1. Who we are and how to contact us

The “Operator,” “we,” and “us” means the developer who publishes King James 1611 Assistant (the “App”) and this website (the “Site”).

We are not Adrian Rogers, Love Worth Finding, Bellevue Baptist Church, or any affiliated ministry, and we are not endorsed by them.

2. Scope

This policy covers:

This policy does not cover:

3. Short summary (Play-oriented)

4. What we do not collect

The App does not implement, and we do not collect through the App:

If a future build adds a category listed above, we will update this policy and the Play Data safety form before that build is distributed as a production update.

5. Data that stays on your phone

Unless you export it yourself or you opt into Together, Cloud Listening, or a model download as described below, the following stays in the App’s private storage (and is removed when you uninstall):

CategoryWhat is storedWhere
Scripture corpusBundled 1611 King James text (80 books, including Apocrypha as in 1611), search indexes, dictionary, maps, cross-references, extras contentApp assets / local SQLite
Reading positionLast book, chapter, verse; chapter scroll positionsLocal database / preferences
StudyBookmarks, highlights (including selected text and offsets), notes and note categories, collections (legacy), reading historyLocal Room database
Personal plansPlan enrollments, day checkmarks, verse-read marks for personal (non-Together) plansLocal Room database — not written to Supabase
ProgressVerse/chapter/book read marks, streaks, achievement unlocks, Bible Quest solves, cosmetic reward claimsLocal Room database
SettingsTheme, fonts, voice, daily verse time, Online Mode flag, notification-related preferencesLocal preferences
Together AI chatsUp to 50 active chats, up to 200 MB per chat, 10 GB total; messages, citations, retrieval tracesfilesDir/chats/ via AES-256-GCM EncryptedFile and Android Keystore. Excluded from Android Auto Backup. Not included in Together Cloud backup
DiagnosticsContent-free metrics only (timings, mode/profile/engine tags, success flags). No prompt text, no transcript, no answer textfilesDir/diagnostics/; you can inspect or wipe in Diagnostics
Together session (Play/standard)User id, email, display name, access/refresh tokens, expiryEncryptedSharedPreferences; cleared on sign-out
Together cache (Play/standard)Cached group plan/members/prayers for offline viewing after a fetchLocal files; not a second cloud
User backup fileJSON you create via Settings → Data (bookmarks, highlights, notes, plans, progress, settings, etc.). Ask chat files are not in that backup formatWherever you save the file (often Downloads). You control that copy
Together Cloud backup (Premium+)Settings, preferences, reading progress, plans, streaks, badges, and tool state. Together AI chats and group chats are excludedSupabase row tied to your Together user id; wiped when you delete the Together account

Display spelling modernization happens on device. It does not send verses to us.

6. Android permissions and why they exist

PermissionWhen usedData implications
INTERNETOnly after Online Mode is on, for the purposes in section 7Does not by itself send study data
ACCESS_NETWORK_STATETo know if a network exists before a user-started downloadNot shared with us
RECORD_AUDIOOptional Ask / live voice input; you are prompted at runtimeSee section 11. We do not receive the recording on our servers
POST_NOTIFICATIONSOptional Daily Verse (Android 13+)Notification content is composed on device from local Scripture. Not sent to us
RECEIVE_BOOT_COMPLETEDReschedule Daily Verse after reboot or app updateNo extra personal data
WAKE_LOCKWorkManager reliability for delayed Daily Verse workNo extra personal data

The App does not request camera, location, contacts, or SMS permissions.

7. Online Mode

A single fail-closed controller gates every App-owned network path. The persisted default is off. When off, the App blocks DNS, sockets, HTTP, discovery, redirects, and retries for App-owned purposes, including:

Turning Online Mode off shuts down in-flight App-owned connections. Bible reading, search, and on-device study continue.

When Online Mode is on, the App still does not open arbitrary internet: Together HTTPS is host-pinned to the Supabase project named above; Cloud Ask and Cloud Listening HTTPS are host-pinned to kjv-assistant-ask.aiinsidersnetwork.workers.dev; billing HTTPS is host-pinned to kjv-assistant-billing.aiinsidersnetwork.workers.dev; model downloads must be HTTPS to huggingface.co / *.huggingface.co / hf.co / *.hf.co or to the exact Cloudflare Worker host kjv-assistant-models.aiinsidersnetwork.workers.dev (Gemma 4 E4B only). Cleartext HTTP is not permitted. The App does not use public cleartext for Together, Cloud Ask, Cloud Listening, Hugging Face, billing, or the gated model Worker.

8. Together (optional cloud; Play and standard)

Together is invite-only group study. It is not required to use the App. Play and companion/standard builds include Together. An earlier F-Droid catalog experiment shipped without a Together client; that flavor is not shipping today.

After you create a Together account in the App or on this Site, Supabase sends a confirmation email. The link returns you to this Site’s standalone confirmation page (together-confirmed), which talks to the same Together Auth project and tells you the account was created. That confirmation page does not keep a lasting browser login. You may then log in on the phone, or on this Site’s Together account page. The App also lists this website under Settings → Data, directly above the version number.

8.1 Account data we process if you sign up

DataWhyStored by
Email addressAccount identifier; you confirm the email on this Site before the first Sign inSupabase Auth
PasswordAuthentication. The Android App and the Site account page send it over HTTPS to Supabase Auth and do not keep the password. Supabase hashes credentials according to its Auth serviceSupabase Auth (not in App storage)
Display name (2–40 characters; default “Believer” if blank)Shown to members of groups you joinSupabase profiles
User id (UUID)Membership, progress, badges, prayersSupabase
Access and refresh tokensKeep you signed in on that phone or, if you choose, in this browserEncryptedSharedPreferences on device; this browser’s local storage on the Site account page; also issued by Supabase Auth

8.2 Group and activity data

DataLimits / notes
Group name, optional descriptionName 2–60 characters; description up to 280
Invite code8-character code; admins can rotate it. Anyone with the current code may attempt to join until it is rotated. Do not post codes in public
Join modeInvite-only (enforced as invite)
Member roleowner, moderator, or member
Member statusactive, kicked, or banned (legacy “removed” treated as kicked). Kick can be reversed with Unkick. Ban blocks rejoin until Unban
Max members2–1,000 (default 1,000). Joins are rejected when the group is full
Group Chat messagesWhole-group only. Access requires membership and a Premium or Scholar plan on the current group owner. History is kept if that plan drops or expires
Premium entitlementStripe customer/subscription ids, status, period end, plan tier, and amount. No card numbers. Cards never enter the App. Free: 2 introductory Together AI questions, up to 3 groups, unlimited local listening. Premium ($11.99/month or $89.99/year): 250 Together AI questions/month, up to 20 groups, 4 Cloud Listening hours. Scholar ($19.99/month or $149.99/year): 500 questions/month, up to 100 groups, 8 Cloud Listening hours, Deep study. Group Chat follows the current group owner’s paid plan. Creating groups is free up to the plan limit
Plan id and calendar start dayCatalog plan ids or custom: plus uuid. Passage text of the KJV is not stored in Supabase
Custom plan definitionName, date window, weekdays, scripture references (book/chapter/verse), session JSON — not verse bodies
Day completion checkmarksWhich member completed which plan day
Prayer request body8–500 characters. In the invite-only group, named or anonymous visibility. A copy of the text only is also shown on the public Site prayer wall with no name, email, group, or account
Unlocked achievement idsSynced to profile_badges so members can see badges. Local Room remains the on-device source of truth

Personal Room plan progress is never written to Together tables.

8.3 Schema that exists but is not used by the current Android UI

The Together database also has tables for group posts, comments, and whole-group messages, with row-level security. The current Android client does not call those tables. If you or another client wrote rows there, they would be user-generated content visible to group members under those policies. We still treat that content as personal data of the authors and of the group, and it is in scope for deletion with the account/group.

Members can Report a prayer or another member from the group. That writes a row to the reports table (reporter id, group, target, and a short reason) so we can review abuse. Members can also Block another member on this phone; blocking hides that person’s prayers and celebrations locally and is not a server ban.

8.4 Who can see Together data

8.5 Legal bases (where GDPR/UK GDPR applies)

9. Optional model downloads

If you choose an on-device catalog model and Online Mode is on, the App downloads weights over HTTPS. Downloaded files stay on your device. Model publishers’ licenses (for example Qwen or Gemma/LiteRT community terms) apply; we do not relicense them. The standard Ask path no longer requires those files.

Hugging Face: most catalog entries download from Hugging Face (including CDN hosts such as cdn-lfs.huggingface.co). The App sends a product User-Agent. Hugging Face may log IP address, URL, and standard server telemetry under Hugging Face’s privacy policy. We do not receive those logs.

Gated Cloudflare Worker (Gemma 4 E4B only): that one catalog file is fetched from our Worker at kjv-assistant-models.aiinsidersnetwork.workers.dev, which streams the object from a private R2 bucket. The App sends a product User-Agent and an anti-hotlink header so browsers and hotlinks are rejected. Cloudflare sees the connection (including IP) as the network operator. For a daily cap of two full downloads per IP, we store a short-lived hash of date plus IP in Cloudflare KV (typically until the next UTC day). We do not use that hash for advertising. The Worker is not a public r2.dev CDN.

9.1 Together AI (Cloud Ask host)

In Play and standard Android flavors, Together AI retrieves verses on the phone, then sends the grounded prompt to our gated Worker at kjv-assistant-ask.aiinsidersnetwork.workers.dev. That Worker calls Cloudflare Workers AI to compose the answer. The App sends a product User-Agent and an anti-hotlink header. Cloudflare sees the connection (including IP) and the prompt text for inference. We do not use Together AI prompts for advertising, and we do not keep a lasting Operator chat archive. If you tap Report on an answer, the App POSTs a short reason and a clipped excerpt to the same Worker so we can review it; a copy is also stored in private app files. Saved chats remain encrypted on the device after the answer returns and are not part of Together Cloud backup. Together AI is a Bible-study helper, not a general chatbot, and it does not speak as God.

10. Windows PC pairing (not used)

This build does not pair with a Windows PC, LMCloud, or a private on-device APK update channel. Together AI uses Cloudflare when Online Mode is on. Bible reading, search, and Speak stay on the phone.

11. Microphone, speech, and Listen

Listen / TTS: Scripture can be spoken with on-device British male voices (Kokoro when the English pack is installed, otherwise bundled Piper). Local listening is unlimited on every plan. Premium and Scholar may use Cloud Listening on the same gated Ask Worker when Online Mode is on and monthly hours remain. Cloud Listening sends verse text for speech synthesis; it does not use Together AI question credits.

Together AI voice input: If you grant RECORD_AUDIO, the App uses Android SpeechRecognizer. Depending on the device, the recognizer may be on-device or may send audio to the vendor’s speech service (often Google on stock Android, or the manufacturer’s service). We do not operate that recognizer and we do not receive the audio on Operator servers. The resulting text stays in the on-device encrypted chat store. Scholar does not back Together AI chats up to Together Cloud.

You can refuse the mic permission and type instead.

12. This website and Tawk.to

The Site is separate from the App. The App does not embed Tawk.to. The App can open this Site in your browser from Settings → Data (user-tapped link; the App does not fetch the Site in the background).

Pages may load fonts from Google Fonts, which can see your IP address and user agent. See Google’s privacy policy.

The Together confirmation page (together-confirmed.html) is a small standalone page on this Site. When you open a confirmation email, it may send the one-time confirmation token to Supabase Auth at lmayadcomumzuqgsjhhb.supabase.co so we can show success or an expired-link message. It does not embed Tawk.to. It is not a chatbot. Tokens in the address bar are removed after the page finishes.

The Together account page (together-account.html) lets you sign in with the same email and password as the App. After sign-in it loads your profile, groups, synced badges, and Premium status (including Together AI usage remaining this month) from Supabase under the same row-level security as the App. You can change display name, email, or password, or delete the Together cloud account. Access and refresh tokens stay in this browser’s local storage until you sign out or delete them. The page does not embed Tawk.to, so a password is not typed next to the Site chat widget. Creating a new Together account still happens in the Android app. On Premium and Scholar plans, the App may also store a study backup (notes, bookmarks, highlights, plans, progress, display settings) with your Together account. Together AI chats stay encrypted on the device and are not part of that backup.

The public prayer wall asks Supabase for published prayer text in short pages through a dedicated function that does not return names, emails, or group ids. The site moves those pages through a frame so the wall can rotate through every request without loading them all at once. If you sign in, a second function returns only the ids of prayers you posted so you can delete them. Signed-in visitors may press a central 🙏 once every 24 hours; that stores your Together user id and the time of the press so we can enforce the limit and add to the worldwide total.

The Site embeds a Tawk.to chat widget (embed.tawk.to property id 688b284b9abe48192a749848, widget 1k08h07na). Tawk.to may process IP address, device/browser data, cookies or similar IDs, approximate location derived from IP, and the contents of chats, including if you enable Tawk AI Assist. That processing is governed by Tawk.to’s data protection terms and their role as a processor for the Operator. Do not send passwords or payment numbers in chat. Prefer Settings → Data in the App to delete a Together account. If you ask us in chat to confirm deletion, we will use the email you provide to look up whether an Auth user still exists.

The Site does not run App analytics and does not include an ad pixel operated by us. Tawk.to and Google Fonts are third parties with their own cookies; we do not respond to browser Do Not Track beyond not adding extra trackers of our own.

13. Sharing, sale, and processors

We do not sell personal information. We do not share personal information for cross-context behavioral advertising. We do not use Together or Ask data to train a public generative model.

Processors / independent services that may receive data only in the cases above:

PartyRoleApplies to
Supabase (project host lmayadcomumzuqgsjhhb.supabase.co)Auth and database for TogetherPlay and standard App, Online Mode on, Together sign-in; the Site confirmation page when you open a verification email; the Site Together account page when you sign in there
Hugging FaceFile hosting for most catalog models you downloadOptional download
Cloudflare (Workers AI Ask host)Gated composition of Together AI answers and Cloud Listening speechPlay and standard App, Together AI and Cloud Listening
Cloudflare (Worker + R2 + KV)Gated Gemma 4 E4B file delivery and a daily per-IP download capOptional E4B download only
Cloudflare (billing worker)Creates Stripe Checkout or Customer Portal session URLsPlay and standard App when you manage a paid plan
StripeCard processing on stripe.com; cards never enter the AppSite checkout for Premium or Scholar
Tawk.toSite chat (and optional AI Assist)Site visitors only
Google FontsFont deliverySite visitors only
Device speech vendorSpeech-to-text if you use the micAsk voice
Google Play / AndroidDistribution, install, OS backups you enable outside our allowBackup=false flagStore and OS

We may disclose information if required by law, to prevent serious harm, or to protect the rights of users (for example abuse of Together). We will narrow the request when we can.

A publishable Supabase key is embedded in Play and standard flavors so the App can call the public Auth/REST API. It is not a service-role secret and does not by itself bypass row-level security.

14. Retention, security, and backups

15. Your rights

You may:

CCPA/CPRA: We do not sell or share (as those terms are defined for advertising) personal information. We do not use sensitive information to infer characteristics for advertising. California residents may request know/delete/correct using the contact methods above. We will not discriminate for exercising those rights.

GDPR/UK GDPR: You may have rights of access, rectification, erasure, restriction, portability, and objection, and the right to lodge a complaint with a supervisory authority. Where we rely on consent, you may withdraw it (for example by signing out and requesting deletion, and by stopping use of the Site chat).

We will need enough information to verify you control the Together email. We may deny requests that are unfounded, excessive, or would violate another member’s privacy (we will then delete or anonymize your identifiers instead of handing over other people’s prayer text).

16. Children

Scripture reading without an account does not require the child to provide personal information to us.

Together accounts are for users 13 years of age or older (or the digital-consent age in the user’s country, if higher). We do not knowingly create Together accounts for children under 13. If you believe a child under 13 created an account, contact us; we will delete it. Parents who share a device should use Android profiles and should not let a child sign into Together.

The App is a Bible teaching product, not a social network for minors. Together contains user-generated prayer text. We do not enroll the App in Google Play’s Designed for Families program unless a future listing expressly says so.

17. International transfers

Supabase, Tawk.to, Hugging Face, Cloudflare, and Google may process data in the United States or other countries. If you use Together, the Site, or a catalog model download from the EEA/UK, you understand that processors may store data outside your country. Hugging Face, Cloudflare, and Tawk.to publish their own transfer mechanisms.

The 1611 King James text is public domain in most countries. In the United Kingdom, Crown rights may still affect commercial printing of the Authorised Version; that is a copyright matter, not a personal-data transfer. See Copyright.

18. Changes

We will post the new effective date at the top of this page. Material changes to App data practices will also be reflected in the Play Store Data safety form before a production store release that collects new data. Continued use after the effective date is acceptance of the updated policy, except where the law requires opt-in consent.

This policy is intended as an accurate description of the product for users and for store review. It is not a waiver of GPL rights in the software, and it is not pastoral, medical, or legal advice.

19. Encryption and US export laws

The App uses ordinary commercial encryption so that Together, Cloud Ask, Cloud Listening, billing, and model downloads travel over HTTPS, and so that Together AI chats and Together tokens stay encrypted on the phone (AES-256 via AndroidX Security Crypto and the Android Keystore). It does not implement a custom cryptographic algorithm. Information security is not the App’s primary function; Bible study is.

Google Play distribution may be treated as an export from the United States. The publisher certifies in Play Console that the App is authorized for export under US law as mass-market / publicly available standard encryption. Google restricts downloads to embargoed destinations. See Play declarations for the encryption inventory used to support that checkbox. That page is not legal advice.