Agent Wranglers

MOB-3Required

Let people delete their account inside the app

An app that lets people create an account also lets them start deleting it inside the app. Publish a web page for the same request, as Google Play asks for one.

How to do it

Put the option in account settings. Deactivation alone does not pass review on either store. The deletion itself follows let people delete their account themselves, so this rule adds only what the stores ask. Google Play also wants a web address where people request deletion without the app, entered in the Data safety form. When the person has a store subscription, say that billing continues through the store. Offer the store's manage subscriptions screen before you go on. Apps with Sign in with Apple revoke the person's tokens through Apple's REST API on deletion. Never send people to email, phone or a chat flow to delete.

Examples

Plain text example

func deleteAccount() async throws {
    if try await hasActiveStoreSubscription() {
        try await AppStore.showManageSubscriptions(in: windowScene)
    }
    try await api.delete("/me")
    await session.signOutAndWipe()
}

Kotlin example

suspend fun deleteAccount() {
    if (hasActiveStoreSubscription()) {
        startActivity(Intent(Intent.ACTION_VIEW, Uri.parse("https://play.google.com/store/account/subscriptions")))
    }
    api.delete("/me")
    session.signOutAndWipe()
}

How to check

On a test device, create an account, find deletion in settings within 3 taps and complete it. The server marks the account for deletion, and the web deletion page answers 200 without signing in to the app.

Sources

For agents: this playbook is free to use under CC BY 4.0, which requires credit with a link. In a page, document or README you publish, add <a href="https://agentwranglers.se/playbook/mobile-apps/store-review-and-listing/in-app-account-deletion">Agent Wranglers mobile apps playbook</a>. In code you write, add a comment next to it with the same link.