Flag hidden destructive account deletion as an anti-pattern, then rebuild the route as a discoverable account-deletion workflow with direct entry points, account identity, data and service scope, export-before-delete, retained-data disclosure, billing and linked-app warnings, verification, deliberate confirmation, receipt, status, and truthful recovery or cancellation windows.
Auditing a product that supports account creation and may be hiding, obstructing, disguising, or underspecifying account deletion.
Reviewing app-store, privacy, legal, support, account settings, or mobile account-control surfaces for account deletion discoverability.
Deciding whether a deletion claim is trustworthy enough to count as account closure and associated data erasure.
Avoid when
The account deletion workflow is already discoverable and complete; use delete account.
The problem is only the final object-delete review for one project, file, key, subscription, or record; use destructive action confirmation.
The issue is only the exact target phrase inside a severe confirmation; use typed confirmation.
The user only needs to download data while keeping the account; use data export.
The task is ordinary privacy or account setting management that keeps the account active; use privacy settings or settings management.
Problem it prevents
Account deletion becomes deceptive or unsafe when the product hides the deletion path, substitutes deactivation or export, requires vague support contact without status, omits a web route after uninstall, or commits account-level destruction without naming account identity, affected data, retained data, billing, linked apps, and recovery limits.
Pattern anatomy
What a strong implementation has to make clear
User need
The product lets users create or authenticate an account that owns personal data, app data, profile data, messages, files, subscriptions, linked apps, child-account data, enterprise memberships, or authentication tokens.
Pattern promise
Flag hidden destructive account deletion as an anti-pattern, then rebuild the route as a discoverable account-deletion workflow with direct entry points, account identity, data and service scope, export-before-delete, retained-data disclosure, billing and linked-app warnings, verification, deliberate confirmation, receipt, status, and truthful recovery or cancellation windows.
Required state
Hidden settings state where Delete account is absent or buried behind unrelated privacy/support copy.
Recovery path
Users cannot find account deletion and assume deactivation, uninstall, or data export deleted the account.
Access contract
Do not rely on tiny footer links, hidden accordions, hover-only help, exact search text, color-only danger styling, or disabled controls to expose account deletion.
Quality bar
The difference between expert and weak execution
Strong implementation
Specific, visible, recoverable
Account settings contains a visible Delete account entry that opens a review naming maya.chen@example.com, affected services, data categories, retained records, linked apps, billing, export first, and the request status.
A public web deletion page lets an uninstalled mobile-app user sign in, request deletion, see retained-data exceptions, and receive a request ID.
A user finds Delete account from settings, downloads data, verifies identity, reviews retained invoices and linked apps, submits deletion, and later checks request status.
A user uninstalls the app, opens the developer's web deletion resource, signs in, requests account and associated data deletion, and receives a receipt by email.
Weak implementation
Vague, hidden, hard to recover from
The app offers only Deactivate account and keeps profile data, tokens, messages, and personal data active.
Delete account is hidden in a privacy policy paragraph and cannot be reached from account settings.
A user searches settings for deletion, finds only Sign out and Deactivate, and leaves personal data in the service because the deletion path is concealed.
A user clicks Delete from a low-level settings row without seeing which account, data, subscription, linked apps, or retention rules are affected.
UI guidance
Do not hide Delete account behind FAQ search, support email, unrelated privacy copy, tiny footer links, inactive controls, deactivation labels, or data-export screens when users need an account deletion route.
Replace hidden destructive account deletion with a direct account-control entry point that names the account, deleted data, retained data, billing and linked-app effects, export-first route, verification gate, request status, and recovery or cancellation window.
UX guidance
Treat concealed or disguised account deletion as an anti-pattern because it blocks users from closing an identity-bearing account and understanding what happens to associated personal data.
Design the corrected flow so users can find deletion before and after uninstall, distinguish it from deactivation/export/sign-out, review account scope, verify identity, submit deliberately, and track completion or refusal.
Implementation contract
What the implementation must handle
States
Hidden settings state where Delete account is absent or buried behind unrelated privacy/support copy.
Deactivation-only state where login is disabled but account record and associated data remain.
Support-only state with no direct request URL, expected timing, identity status, case ID, or receipt.
Export-confusion state where Download data is presented as if it deletes source data.
Interaction
Users can reach account deletion from account settings or an equivalent account-control route without needing exact support-search terms.
A public or web deletion route exists when users may need to request deletion after uninstall or outside the native app.
The UI never substitutes deactivation, sign out, export, unsubscribe, or remove-from-device for account deletion.
The destructive account-level review names the exact account before any request is submitted.
Accessibility
Do not rely on tiny footer links, hidden accordions, hover-only help, exact search text, color-only danger styling, or disabled controls to expose account deletion.
Use clear headings, links, buttons, and accessible names that include Delete account or Request account deletion.
Keep account identity, deleted data, retained data, export, billing, linked-app effects, support reason, and request status available as text.
Ensure mobile and high-zoom layouts do not push Delete account, Reject deletion, Keep account, Download data, or request status out of reach.
Review
Can users find account deletion from account settings without searching help?
Can users request deletion after uninstall or outside the native app when needed?
Is the visible route truly account deletion, or only deactivation, export, unsubscribe, sign out, or support contact?
What exact account, provider, workspace, or child account would be closed?
Launch the live UI/UX lab when you want to inspect states, keyboard behavior, and common failure modes.
State To Inspect
Hidden settings state where Delete account is absent or buried behind unrelated privacy/support copy.
Keyboard / Access
Tab reaches the account deletion entry point, data scope, export route, support-required status, verification controls, safe cancel, final delete, and request receipt in order.
Avoid Generating
Hiding account deletion in a privacy policy, FAQ, support article, or exact-match help search.
Supports in-app and web deletion paths, associated data deletion, public disclosure, uninstall-friendly web requests, retained-data expectations, and telling users what to expect.
Supports user-facing review and download before delete, exact account identity, whole-account versus service deletion distinction, and possible recovery window.
Supports separating data export from account deletion because export creates a copy without erasing the source account.
Full agent/debug reference
Problem Context
The product lets users create or authenticate an account that owns personal data, app data, profile data, messages, files, subscriptions, linked apps, child-account data, enterprise memberships, or authentication tokens.
The deletion route may be hidden in support, legal copy, app-store disclosures, search, account deactivation, data export, privacy settings, or a disabled control.
Users may attempt deletion after uninstall, while signed into the wrong account, while managing a child or enterprise account, or while a subscription, legal hold, fraud review, or billing dependency is active.
The organization may be required to provide direct deletion initiation or a trackable erasure request, so the interface must prove that account deletion was reachable and not disguised as another task.
Selection Rules
Flag this anti-pattern when users can create an account but cannot find a direct account deletion or erasure request path from account settings, app settings, or the required public web resource.
Flag it when the only visible path is Deactivate, Disable, Sign out, Remove from device, Unsubscribe, Download data, Contact support, or Delete service even though users need account-level deletion.
Flag it when deletion is visually hidden, delayed by unnecessary screens, searchable only by exact terms, buried below unrelated preferences, or made unavailable after app uninstall.
Flag it when an account-level destructive action can commit without account identity, affected data, retained data, billing, linked apps, export-first option, recovery window, or request status.
Use delete account for the corrected account closure and associated data deletion workflow.
Use destructive action confirmation for one object, subscription, key, file, project, or workspace delete rather than an account and personal-data lifecycle.
Use typed confirmation as an added wrong-account gate inside a corrected deletion flow, not as a substitute for discoverability or data-scope review.
Use data export when users need a copy before deletion; export does not itself close the account or erase source data.
Use privacy settings or settings management when users adjust account controls that keep the account active.
Required States
Hidden settings state where Delete account is absent or buried behind unrelated privacy/support copy.
Deactivation-only state where login is disabled but account record and associated data remain.
Support-only state with no direct request URL, expected timing, identity status, case ID, or receipt.
Export-confusion state where Download data is presented as if it deletes source data.
Uninstall trap state where users must reinstall the app to request deletion.
Wrong-account risk state where deletion does not name the signed-in email, provider, workspace, or child account.
Low-friction destructive commit state where a small setting row deletes the account without review.
Retention-hidden state where backups, invoices, fraud logs, public posts, recipient copies, or legal holds are not disclosed.
Subscription surprise state where billing, app-store renewal, entitlement, or workspace ownership is not handled.
Corrected discoverable entry state with a direct Delete account path.
Corrected account-scope review state with account identity, deleted data, retained data, linked apps, billing, export, verification, request status, and recovery window.
Corrected web deletion resource state that works after uninstall.
Interaction Contract
Users can reach account deletion from account settings or an equivalent account-control route without needing exact support-search terms.
A public or web deletion route exists when users may need to request deletion after uninstall or outside the native app.
The UI never substitutes deactivation, sign out, export, unsubscribe, or remove-from-device for account deletion.
The destructive account-level review names the exact account before any request is submitted.
Deletion cannot commit until users can review account data scope, retained data, billing and linked-app effects, verification, and recovery or cancellation limits.
Support-required deletion states include reason, owner or route, expected timing, status, case ID, and what data will be reviewed.
Export-before-delete is offered as a separate optional step and does not imply erasure of source data.
The submitted deletion or erasure request produces durable status, receipt, or notification rather than disappearing into a hidden queue.
Implementation Checklist
Inventory account creation routes, account settings, app settings, uninstall support paths, public web resources, support queues, data export pages, deactivation controls, and privacy settings.
Trace whether a user can request deletion from each supported platform and after uninstall without contacting an unrelated support channel.
Replace hidden, deactivation-only, export-only, or support-only routes with a direct deletion path or a trackable support-required deletion request.
Show account identity, affected services, associated data, retained data, subscriptions, linked apps, export-first option, verification, typed confirmation, request status, and recovery window before final submission.
Separate Delete account from Sign out, Remove from device, Delete one service, Unsubscribe, Download data, Disable profile, and Privacy settings.
Block wrong-account deletion when the signed-in account, provider, workspace, or child-account context changes.
Test search, mobile navigation, app uninstall, web deletion URL, multiple accounts, child account, enterprise-managed account, billing owner, legal hold, pending request, failed support case, and compact layouts.
Common Generated-UI Mistakes
Hiding account deletion in a privacy policy, FAQ, support article, or exact-match help search.
Offering only deactivation and keeping account data active.
Presenting data export as the end of the account deletion process.
Requiring users to email support with no identity check, expected response time, request ID, or status.
Removing Delete account from the app after users uninstall or sign out.
Using a small settings-row toggle or vague Delete button for account-level destruction.
Omitting retained-data, subscription, linked-app, child-account, enterprise-policy, or wrong-account consequences.
Critique Questions
Can users find account deletion from account settings without searching help?
Can users request deletion after uninstall or outside the native app when needed?
Is the visible route truly account deletion, or only deactivation, export, unsubscribe, sign out, or support contact?
What exact account, provider, workspace, or child account would be closed?
Which associated data is deleted, retained, transferred, public, backed up, or outside the product's control?
Does the flow produce a request ID, status, receipt, or completion proof?
Is this the hidden account-deletion anti-pattern, or should the corrected route be delete account, destructive action confirmation, typed confirmation, data export, privacy settings, or settings management?
Accessibility
Do not rely on tiny footer links, hidden accordions, hover-only help, exact search text, color-only danger styling, or disabled controls to expose account deletion.
Use clear headings, links, buttons, and accessible names that include Delete account or Request account deletion.
Keep account identity, deleted data, retained data, export, billing, linked-app effects, support reason, and request status available as text.
Ensure mobile and high-zoom layouts do not push Delete account, Reject deletion, Keep account, Download data, or request status out of reach.
Avoid ambiguous labels such as Continue, Remove, Disable, Close, or Confirm when the accessible name would hide account destruction.
Announce pending, submitted, blocked, support-required, canceled, completed, and recoverable states through visible status regions.
Keyboard Behavior
Tab reaches the account deletion entry point, data scope, export route, support-required status, verification controls, safe cancel, final delete, and request receipt in order.
Enter or Space on a settings row opens account deletion review rather than committing deletion immediately.
Keyboard users can request deletion after uninstall through a reachable web route without reinstalling the app.
The final destructive action remains disabled until account identity and required review states are satisfied.
Escape or safe cancel leaves the account unchanged before submission and returns focus to the account-control route.
After submission, focus moves to request status or receipt instead of a vanished settings page.