What's New in This Version (v1.0.3 release notes) Upcoming!
by•
App Store & Google Play subscriptions detected automatically
CentryAI now scans your iCloud and Gmail for App Store and Google Play receipts — surfacing subscriptions you may have forgotten, complete with app icons, trial prices, renewal prices, and next billing dates.

Cancel in one tap
For App Store and Google Play subscriptions, the cancel button now takes you straight to your phone's subscription settings — no searching required.
Yearly subscriptions found more reliably
Subscriptions that only send one receipt a year (like annual app purchases) were sometimes missed. The email scanner now looks back a full year for platform receipts so nothing slips through.
106 views


Replies
Looks great! How do you handle privacy ? Are receipts processed locally or do they pass through your servers ?
CentryAI
@michael_dawson4 Great question, and it's the one I care about most.
Receipts are processed server-side in Cloud Functions, but they're never stored. The email content lives only in memory for the few seconds it takes to extract the subscription details — after that, only the structured fields (service name, price, renewal date) are saved. The raw email is never written to a database, never logged, never sent anywhere else.
On Gmail we use the gmail.readonly scope — the narrowest one Google offers — and the whole flow was independently audited under Google's CASA Tier 2 assessment. On iCloud, the app-specific password is stored only in your device's Keychain and cleared on sign-out.
Happy to go deeper on any part of it — privacy questions are always welcome here.
Bababot
I like the one-tap shortcut to subscription settings. Small UX improvements like this can save users a surprising amount of time.
CentryAI
Thanks @aarav_pittman ! That one came straight from my own frustration — App Store and Google Play subscriptions can only be cancelled through the platform's own settings page, and finding it is annoyingly deep in the menus. So for those subs we just route the cancel button directly there. Small thing, but it removes a real friction point.
Serand
Nice update , Automatic receipt scanning combined with quick access to cancellation makes managing subscriptions much less of a hassle.
CentryAI
Appreciate it, @maali_baali ! That was exactly the goal — finding a subscription is only half the job; if cancelling it is still a chore, most people never get around to it. Trying to close that whole loop.
Really appreciate that you extended the scan window for yearly subscriptions. I always forget about those. What made you discover that users were missing annual receipts?
CentryAI
@ashir_murtaza1 Honestly, I found it by getting bitten myself. I was dogfooding a scan on my own inbox and noticed an annual app subscription I knew I had wasn't showing up. Digging into the logs, the reason was obvious in hindsight: yearly subscriptions only send one receipt a year, and our scan window only looked back 90 days — so their single receipt was almost always outside it.
The fix was to extend the look-back window to a full year specifically for App Store and Google Play receipts. Those are exactly the subscriptions people forget about most, so it stung that we were missing them. Thanks for calling it out — it's one of my favorite fixes in this update.
This feels surprisingly polished for a v1.0.3 update. The receipt parsing sounds tricky was Google Play or the App Store more difficult to support?
CentryAI
@twagiramungu_yves Thanks! Honestly, the App Store was trickier — Apple sends receipts in a few different layouts (one doesn't even include the word "Subscription"), so parsing them reliably took some work. Google Play was more about handling localized emails. Fun problem either way 🙂