This is the privacy policy for app versions with optional rewarded ads. The version without ads is kept for reference.
Draft. Under legal review before the app launches.
Effective date: 1 November 2026
Last updated: 1 November 2026
Shloka Scroll ("the app", "we", "us") is published on the Apple App Store (iPhone) and Google Play (Android) by Banupriya Sankarasubbu, an individual developer based in Singapore. This policy explains what information is used when you use the app, why, and your choices. It is written to meet India's Digital Personal Data Protection Act, 2023 and the DPDP Rules, 2025 (together, the "DPDP Act"), as well as Singapore's Personal Data Protection Act 2012.
1. The short version
- Reading the Gita never requires an account or ads.
- To protect our translations from bulk copying, our content server (on Cloudflare) keeps a pseudonymous device ID, daily download counters (35 days) and abuse records with hashed IP addresses (180 days). No names, emails or raw IP addresses (§4).
- Ads are optional. The app shows an ad only if you choose to watch one to unlock an extra. Until you choose, no ad code runs and nothing is sent to an ad company.
- When you do choose to watch an ad, Google AdMob receives limited technical data (§5). Ads are not personalised, and we do not track you across other apps or websites.
- No ads are shown to anyone under 18.
- Subscriptions are handled by Apple or Google Play, depending on your device. We never see your payment details.
- Your bookmarks, streak and settings stay on your device.
2. Information stored only on your device
| What | Why |
|---|---|
| Bookmarked verses, last verse read, streak, settings | So the app works the way you left it |
| Your answer to the age question and your ad choice (with the date and the version of the notice you saw) | So we respect your choice and don't ask every time |
| Whether you have an active subscription, as reported by Apple or Google Play | To unlock Premium features |
This information never leaves your device, and we can't see it. Deleting the app deletes it. It may be included in your own device backups (for example iCloud or Google backup).
3. Information we receive if you contact us or suggest a correction
If you email support@shlokascroll.com, we receive your email address and message. We use them only to reply and to fix any errors you report, and we delete them within 12 months of the conversation ending. Our mailbox is provided by Google (Gmail).
Suggesting a correction in the app. If you use Suggest a correction on a verse and tap Send, our server receives:
- what you're commenting on: the verse, which part (translation, word meaning or Sanskrit), the meaning language and script, and the word you tapped, if any;
- your suggestion (up to 1,000 characters);
- the app and content versions;
- your device's pseudonymous ID (see the content-server section), so we can link related suggestions, reply in a future update if needed, and stop abuse.
There are no name or email fields. Please don't include personal details in your suggestion. We use suggestions only to review and correct the text. We keep each suggestion with the device ID for 12 months after we've dealt with it, then delete the device ID; the text of a suggestion we act on may be kept without it as part of our record of corrections. If sending fails, the app offers to open an email to support@shlokascroll.com instead; then the email paragraph above applies.
4. Our content server and copy protection
The verses, translations and word meanings are downloaded from our server, api.shlokascroll.com, rather than shipped inside the app (a few sample verses are built in). The server runs on Cloudflare. To stop our translations being copied in bulk, the server only answers genuine copies of the app on genuine devices, and it limits how much each device can download per day. This means the following information is processed:
| What | Details | Kept for |
|---|---|---|
| A pseudonymous device ID | A random identifier for the app's installation on your device (on iPhone, derived from the App Attest key; on Android, from a random install ID the app creates). It is not your name, email, phone number or advertising ID. We store a one-way hash of it, together with the platform (iPhone or Android), the security key and counter Apple's App Attest uses (iPhone only), when it first and last connected, how many sessions it has started, and its status (normal, flagged for review, or blocked). | 12 months after the device last contacts our server, then deleted automatically (a blocked device that keeps trying counts as contact). Ask us and we will delete it sooner. |
| Daily usage counters | For each device and day: which chapters were downloaded, and how many chapter and verse downloads were made. | 35 days, then deleted automatically |
| Abuse records | When a device or connection goes over our limits or fails the genuine-app check: the device ID, the time, what happened, and a keyed one-way hash (HMAC) of the IP address. We don't store raw IP addresses. | 180 days, then deleted automatically |
| Invisible marks in the text | The translations sent to each device contain invisible characters unique to that device. If our text is copied and published, we can tell which device it came from and block that device. | Nothing extra is stored: the marks are recalculated from the device ID. Once the device record is deleted, a copy can no longer be linked to that device. |
| Short technical logs | Server events such as errors, blocked requests and (on iPhone) promotional-offer signings: the device ID, the type of event and, for security events, the hashed IP address. Used to fix problems and spot abuse. | Up to 7 days, then deleted automatically by Cloudflare |
| Your IP address | Used at the moment of each request to apply rate limits, and handled by Cloudflare to deliver and protect the service (for example against attacks). Our own logs never contain raw IP addresses. | Not stored by us, except as the hash above. Cloudflare keeps short-term service logs under its own policy. |
Genuine-app checks. On iPhone, Apple's App Attest confirms that requests come from an unmodified copy of the app on a real Apple device. On Android, Google Play Integrity does the same: our server sends Google a token from the app and receives Google's verdict. Apple and Google process the information needed for these checks under their own privacy policies (https://www.apple.com/legal/privacy/ and https://policies.google.com/privacy).
Why. Only to deliver the content you ask for, to prevent abuse, scraping, automated access and bulk copying of our translations, and to trace and stop leaks. We don't use any of this for ads, analytics or profiling, we don't link it to your name, email or advertising identifier, and we don't sell it.
Who. Cloudflare, Inc. stores and processes this data for us as our data processor (https://www.cloudflare.com/privacypolicy/). We have no accounts, so the device ID isn't linked to your name, email or phone number.
Legal basis. This processing is necessary to provide the content you choose to download. We rely on DPDP Act s.7(a) (information you provide voluntarily for a specified purpose).
5. Optional ads (Google AdMob)
When. Only after you tap an option such as "Watch an ad to unlock…", read our notice, confirm you are 18 or older, and tap Agree. If you tap "Not now", or say you are under 18, no ad code is started.
Who. Ads are provided by Google AdMob (Google LLC and its affiliates), which processes data as an independent company under its own policies: https://policies.google.com/privacy and https://policies.google.com/technologies/partner-sites.
What Google receives when an ad loads, according to Google's own disclosures:
- a device identifier:
- on iPhone, an app-specific or vendor identifier. Because we don't request Apple's tracking permission, Apple's advertising identifier (IDFA) is not available;
- on Android, an app-set identifier (an ID shared only by apps from the same developer on your device). Our app doesn't allow access to your Android advertising ID, and it doesn't use Android's Privacy Sandbox advertising features (Topics, attribution or the ad-services ID);
- your IP address, which may be used to estimate your general location (city or region, not your precise location);
- advertising data, such as which ads you saw and whether you watched them;
- interaction data, such as ad taps and video views;
- crash and performance data related to ads.
Why. To show the ad, give you the reward, measure that the ad was shown, cap how often you see the same ad, and prevent fraud.
Not personalised. We ask Google to show non-personalised ads only, meaning ads chosen by the context of the app and your general location, not by a profile of you. On iPhone we don't ask for Apple's "Allow tracking" permission. On either platform, we don't link this data with data from other companies for advertising.
Ad content. We restrict ads to general-audience content and block categories such as gambling, dating and alcohol. If you see an inappropriate ad, tell us and we will block it.
Your choices. You can withdraw at any time in Settings → Ads & privacy → Withdraw ad consent. Ads stop immediately, and the ad code is not started again unless you opt in again. Withdrawing is as easy as agreeing, and it doesn't affect your reading. You can also reset your device's identifiers in your device settings; on iPhone, deleting and reinstalling the app resets the vendor identifier, and on Android, the app-set identifier resets if no app from us has been used for 13 months (Google's documented behaviour, unverified for 2026). Data Google already received is governed by Google's policy (above), including its retention periods.
Regional consent. Where the law requires a separate consent form (for example in the UK, Switzerland or some US states), you will see Google's consent message, provided through Google's User Messaging Platform, before any ad is shown.
6. Subscriptions
If you subscribe to Shloka Scroll Premium or buy Premium Lifetime, the purchase is processed entirely by the store you bought it from, under that store's terms and privacy policy:
- iPhone: Apple (https://www.apple.com/legal/privacy/). Manage or cancel in Settings → your name → Subscriptions.
- Android: Google Play (https://policies.google.com/privacy). Manage or cancel in the Play Store app → profile icon → Payments & subscriptions → Subscriptions.
We receive no payment card, UPI or bank details. Your device tells the app whether you have an active subscription or a lifetime purchase, and that check happens on your device. Apple sends us only aggregated sales reports that don't identify you. Google Play gives developers order records for each purchase (an order number, the product, the price, the date, and the buyer's country/state), which we use only for accounting, refunds and tax.
Promotional offers on iPhone. If the app offers you a special price (for example a discount for returning subscribers), Apple requires the offer to be signed by us. The app sends our server your device ID, the product and the offer, and, for newer iOS versions, an Apple transaction identifier that Apple uses to check you're eligible. Our server signs the offer and sends it back. It doesn't store any of this, apart from a short technical log line (device ID, product and offer) that Cloudflare deletes within 7 days. Introductory offers and offer codes don't involve our server.
7. Children
Under the DPDP Act, a child is anyone under 18. The app is suitable for readers of all ages, but:
- we don't show ads to anyone who tells us they're under 18, and we never load the ad code for them. Their answer is saved on the device for that installation and can't be changed in the app, so the ad code stays off;
- we never carry out tracking, behavioural monitoring or targeted advertising directed at children;
- the content server's device ID, download counters and abuse records (§4) apply to every installation, whatever the reader's age. They are used only for security and copy protection, never for tracking, profiling or ads, and they aren't linked to anyone's identity;
- we don't knowingly collect any other personal data from a child. If a parent or guardian believes a child has provided personal data (for example by email), contact us and we will delete it.
Subscriptions bought by minors are subject to the store's parental controls (Apple's Family Sharing and Ask to Buy, or Google Family Link and Play purchase approvals).
8. Legal basis and consent
We rely on your consent (DPDP Act s.6) to enable optional ads, given through the in-app notice described in §5. You may withdraw it at any time (§5). For the content server (§4), see the legal basis given there. Where we process your email to reply to you, we rely on the fact that you voluntarily provided it for that purpose (DPDP Act s.7(a)).
9. Your rights
Under the DPDP Act (if you are in India), Singapore's PDPA and similar laws, you can:
- ask for a summary of the personal data we process about you and who it has been shared with (in practice, your support emails, your device's records on our content server, and the fact that Google AdMob receives ad data if you opted in);
- ask us to correct or erase it, and withdraw consent;
- nominate someone to exercise your rights if you die or become incapacitated (DPDP Act s.14);
- have your grievance addressed by us (see §10), and if you are not satisfied, complain to the Data Protection Board of India.
Because there are no accounts, we can find your device's server records only from the device identifier shown in the app under Settings → Credits; include it in your request. If you reinstalled the app, each installation has its own identifier and only the current one is shown. We can't find an earlier installation's records without its identifier, but they're deleted automatically 12 months after that installation last connected. If the app shows "None", our server holds no records for this installation. We don't hold ad data ourselves. For data Google received, we will pass on your request and point you to Google's tools (https://myadcenter.google.com and https://policies.google.com/privacy). We will respond within the time the law requires, and in any case within 30 days.
10. Contact and grievance officer
Grievance Officer / Contact: Banupriya Sankarasubbu
Email: support@shlokascroll.com
Postal address: available on request.
We acknowledge grievances within 48 hours and aim to resolve them within 30 days.
11. Security and breaches
We hold no accounts, names or contact details on our server. The content server stores only the pseudonymous records in §4, with IP addresses kept only as keyed hashes; access to it is limited to us, and our email, developer and Cloudflare accounts are protected by two-factor authentication. Data sent to our server, Google and Cloudflare is encrypted in transit (TLS). If a personal-data breach affecting you occurs, we will notify you and the Data Protection Board of India as the DPDP Act requires.
12. International transfers
Google processes ad data and email, and Cloudflare processes content-server data, in countries outside India and Singapore, including the United States. Cloudflare runs a worldwide network, and we ask Cloudflare to keep our server's database in the Asia-Pacific region, but Cloudflare doesn't guarantee a particular country. The DPDP Act permits this, except to countries the Government of India restricts.
13. Changes
We will update this policy before any version of the app changes how data is used (for example, adding personalised ads or a server for purchases). We will change the "Last updated" date and, where the law requires it, ask for your consent again in the app.
Our website
This policy also covers our website, shlokascroll.com. It has no cookies, no analytics, no ads and no forms. It is hosted by Cloudflare, which processes visitors' IP addresses and basic request data to deliver the pages and protect them from attacks, under Cloudflare's privacy policy (https://www.cloudflare.com/privacypolicy/). Email sent to support@shlokascroll.com is forwarded by Cloudflare Email Routing to our mailbox.
14. Governing law
This policy is governed by the laws of Singapore. That does not remove any rights you have under the mandatory laws of your country, including India's DPDP Act.