Policy and compliance
what the code does, what you decide.
Rewards apps are reviewed closely by ad networks and app stores. This page shows how Watch And Earn is built to stay inside their rules and which decisions are yours. You are the publisher; nothing here is legal advice. Policies change: read the current versions linked below before you release.
01Points never become cash
Points are a non-transferable score with no cash value. Every points source (rewarded ads, games, streaks, check-in, quizzes, tasks, events, promo codes, partner offers) pays points only, and there is no code path from points to money: no conversion, no exchange rate, no "cash out points". The rewards store has no cash, gift-card or crypto item kinds, and the console refuses item titles that name them.
Version 4.0 adds a separate cash wallet, off by default, funded only by verified offerwall and survey payouts, the referral commission on those, and cash you grant by hand. Tests fail if a points source ever touches the wallet: firebase/functions/test/unit/wallet.test.ts ("HARD RULE"), firebase/functions/test/integration/wallet.test.ts and app/test/no_cash_out_test.dart, which also checks every text in all 9 languages for wording that offers points for cash. See the hard rule.
Paying users in money, gift cards or crypto for watching ads breaks the AdMob rewarded-ads policy and is a common reason for ad accounts to be closed and apps to be removed. The 2.x version of this item had a PayPal coin redemption; the Flutter rebuild (4.0.0) removed it for this reason. Your store listing, screenshots and texts must not suggest that ads, games or points pay money.
Before you switch the cash wallet on, read Platform rules and Your legal duties.
02AdMob rewarded ads policy
Read: AdMob policies for ad units that offer rewards. How the code follows it:
- No monetary rewards for ads. Rewarded ads pay in-app points only, and the points notice says so in onboarding, in the settings and on the rules screen. The cash wallet is credited by partner offers and surveys, never by ads.
- Opt-in. A rewarded video starts only when the user taps it, and the app says what the reward is before the video.
- Server-side verification. Points are credited only after the network's signed callback, once per view, with daily caps and a cooldown.
- Non-rewarded placements are off by default (app open, interstitial, banner, native) and have caps when switched on (Placements).
- Rewarded interstitials show an intro screen with a countdown and a "No thanks" button first, as the policy requires for that format (intro rule).
- The mystery box shows the odds of each prize before it is opened. The AdMob policy also asks for random rewards to be disclosed with all possible outcomes. Keep that in mind if you change the wheel or the scratch cards.
Other networks have their own publisher policies with the same spirit. Read the one for the network you choose.
03Google Play Developer Program Policy
Read: the Google Play Developer Policy Center (Developer Program Policy).
| Area | What it means here |
|---|---|
| Deceptive behaviour | Do not promise income, and do not suggest that ads, games or points pay money, in the title, icon, description or screenshots. With the wallet off, describe it as a rewards app with points. With the wallet on, say that cash rewards come from completed partner offers and surveys, with minimums, a hold and an approval step. |
| User data | Publish a privacy policy (console → Legal) and fill in the Data safety form truthfully: Firebase Authentication, Firestore, FCM, the ad network SDK and the advertising id (AD_ID permission is declared); with the wallet on, also payout destinations (PayPal e-mail, crypto address, bank details) and payout history. |
| Account deletion | Required for apps with accounts. The app has Delete account in Settings; it calls deleteAccount, which removes the user's data and auth account and works even for banned users. Wallet and payout records are kept as money records (details); say so in your privacy policy. Play also asks for a web link where users can request deletion; provide one. |
| Ads | Ads must not be disruptive or mimic app content. Keep interstitial pacing moderate. |
| Families | If you target children, the Families policy and certified ad SDK rules apply; the default setup is not built for a children's audience. |
04Real-money gambling, games and contests
Read: Google Play Real-Money Gambling, Games, and Contests policy.
- The lucky wheel and scratch cards give only points, which have no monetary value and cannot be exchanged for anything of value.
- No purchase is needed to play. Spins and scratch cards are free each day, and extra ones come from watching a rewarded video, not from paying.
- Do not sell spins or scratch cards, and do not add prizes of real-world value. Either change can turn the mini-games into gambling or a contest under store rules and local law.
- The mystery box is opened with points only, never with money, and gives points or cosmetics. If you sell point packs, points can come from a purchase, so the box counts as a randomized item obtained through a purchase. Keep its odds screen (Store policy).
- Events and tournaments pay points and cosmetics only. Prizes of real value would make them contests.
- If you run leaderboard contests with real prizes, local contest laws and the store's contest rules apply, including official rules and the statement that the store is not a sponsor.
05Apple App Review Guidelines
Read: App Review Guidelines.
- 3.1.1 In-App Purchase. VIP, remove-ads, boosters and point packs unlock digital features or currency, so they must use Apple's in-app purchase, as the code does. Do not link to outside payment for them. Purchased in-game currency may not expire, and randomized items obtained through a purchase need their odds disclosed (Store policy).
- 5.3 Gaming, Gambling, and Lotteries. The wheel and scratch cards must not be paid for and must not award anything of real value. Keep them as free mini-games for points.
- Cash wallet and offerwalls. Off on iOS by default because of Apple's rules on incentivised installs and compensation; read Why iOS is off before you switch them on.
- Sign in with Apple. The app offers it alongside Google sign-in.
- Account deletion is available inside the app.
- App Tracking Transparency.
Info.plisthas a tracking usage description. If your ad setup uses the advertising identifier, make sure the tracking prompt is shown before tracking, as your ad network's iOS guide describes.
06Store policy for boosters, point packs and operator rewards
The console's help for Sell boosters and Sell point packs points here. The full section, with quotes from Google Play's Payments policy, Apple guideline 3.1.1 and AdMob's rewards policy, is on VIP, boosters and packs → Store policy. In short:
- Sell boosters and point packs only as store consumables, and only if you accept that your app then sells virtual currency.
- Bought points stay inside the app, never expire and are never transferable.
- Keep the mystery box odds screen.
- No points, earned from ads or bought, may ever be exchanged for cash, gift cards or crypto. Operator rewards must be non-transferable and usable only in your app (Operator rewards).
07Privacy and consent
- The app shows Google's UMP consent form where the law requires it before any ad request (Consent).
- Your privacy policy must name the data the app and its SDKs collect: account id, display name, points history, device advertising id, push token, crash and usage data the SDKs collect. Also: a hash of a device identifier and the emulator, root, VPN and App Check signals (Anti-fraud), public profile data shown to friends and teams, and the user id passed to any offerwall or survey provider you enable.
- Rewards rules page (console → Legal → Rewards rules URL): how points are earned, daily limits, and that points have no cash value. Store reviewers look for it. With the wallet on, add your payout terms (what to include).
- With the wallet on: payout destinations, the declared country, a hash of the destination and payout history are stored and used for fraud checks (privacy policy).