Skip to content

Data export and account deletion that really work

Let users download their data and delete their account themselves, covering every table and service.

  • Free, no sign-up
  • 2 to 3 hours with an agent
  • By Devvrat Hans
  • Version 1.0, updated Oct 26, 2026

1Your site and stack

Optional. The prompt adapts as you type; leave a field blank and the agent works it out.

2Copy it into your agent

data-export-deletion.md62 lines, about 896 tokens

Paste into any coding agent: Claude Code, Cursor, Codex, Copilot, Windsurf or Cline.

# Data export and account deletion that really work

Users of the production site should be able to get a copy of their data and delete their account without emailing anyone, and the deletion should reach every place their data lives. Privacy laws give many users this right, app stores require deletion, and it is a strong trust signal at launch.

Site: not given. Find the production URL in the project config, or ask me.

## Ground rules

1. Read before you write. Explore the parts of the codebase this job touches and tell me what is already in place.
2. Plan, then stop. Give me a numbered plan: what you will change, in which files, and why. Wait for my approval before editing anything.
3. Fix things at their source (the shared layout, the config, the generator), not with one-off patches page by page.
4. Keep the project's conventions: its framework APIs, file layout, naming and code style. Add no new dependency without asking.
5. Where something is already done well, say so and leave it alone.

## You will not

- Edit `.env` files, secrets or API keys, or print their values.
- Deploy, push, merge or publish anything.
- Delete data, or run migrations or scripts against a production database.
- Add tracking, third-party scripts or links to any site I did not ask for.
- Change copy, design or behaviour that this job does not need.
- Delete any real user's data while testing.
- Delete records the law requires keeping.

## Your stack

- Framework: Work out the framework, router and build output from the project files (package.json, lockfiles, framework config) before planning, and say which you found.
- Host: Work out where the site is hosted from the config files (vercel.json, netlify.toml, wrangler config, Dockerfile, fly.toml) and say which you found.

## Steps

### 1. Find every place user data lives

From the schema and code, list every table, column, file store, search index, cache and third-party service (email, analytics, payments, CRM) that holds data tied to a user. Mark which rows are personal, which must be kept by law (invoices, tax records) and which are shared (comments other people replied to).

### 2. Export

Add a self-serve export from account settings that produces a machine-readable file (JSON, with CSV where it helps) of the user's own data, generated on request and delivered by a signed, expiring link or a direct download. Exclude other users' personal data and internal fields.

### 3. Delete

Add account deletion from settings with a clear explanation and a confirmation step (re-enter the email or password). Delete or anonymise every personal row, uploaded files, and sessions; call third-party deletion APIs where they exist; keep only what the law requires, linked to an anonymised id. Cancel active subscriptions first.

### 4. Say what happens

Show what is deleted, what is kept and why (invoices, for example), and how long backups take to roll over. Add a test that deletion removes the user's personal rows from every table in the inventory.

## Done means

- [ ] Every place user data lives is listed, with what must be kept and why.
- [ ] Users can export their own data from settings.
- [ ] Users can delete their account from settings, and deletion reaches every table, file and third party listed.
- [ ] A test proves deletion removes personal rows from every listed table.

## Report back

When you finish, give me:

- what you changed, file by file;
- anything you skipped, and why;
- anything I must do by hand (DNS records, dashboards, accounts, deploys);
- how to check each change on the live site.

One-line version

For agents that can read a URL. It fetches this prompt with your settings applied.

Read https://abacklaunch.com/prompts/data-export-deletion.md and follow it for this project.

3Check the result

When the changes are live, run these free checks. Add your site URL above and each one opens already running on it.

This prompt will not

  • Edit .env files, secrets or API keys, or print their values.
  • Deploy, push, merge or publish anything.
  • Delete data, or run migrations or scripts against a production database.
  • Add tracking, third-party scripts or links to any site I did not ask for.
  • Change copy, design or behaviour that this job does not need.
  • Delete any real user's data while testing.
  • Delete records the law requires keeping.

It reads your code first, shows you a plan, and waits for your approval before it changes anything.

What you get

  • A map of every place user data lives
  • Self-serve data export
  • Account deletion that reaches every table, file and third party
  • A test that keeps deletion complete

How to use this prompt

  1. 1

    Describe your stack

    Add your site, framework and host. The prompt adapts; blank fields are left for the agent to work out.

  2. 2

    Paste it into your agent

    Open your project in Claude Code, Cursor, Codex, Copilot, Windsurf or Cline, and paste the prompt or the one-line version.

  3. 3

    Approve the plan

    The agent reads your code, shows you a plan with the files it will touch, and waits. Change anything you disagree with.

  4. 4

    Check the result

    When the changes are live, run the free checks below on your site to confirm each fix.

What the agent does

Users of the production site should be able to get a copy of their data and delete their account without emailing anyone, and the deletion should reach every place their data lives. Privacy laws give many users this right, app stores require deletion, and it is a strong trust signal at launch.

  1. 1. Find every place user data lives

    From the schema and code, list every table, column, file store, search index, cache and third-party service (email, analytics, payments, CRM) that holds data tied to a user. Mark which rows are personal, which must be kept by law (invoices, tax records) and which are shared (comments other people replied to).

  2. 2. Export

    Add a self-serve export from account settings that produces a machine-readable file (JSON, with CSV where it helps) of the user's own data, generated on request and delivered by a signed, expiring link or a direct download. Exclude other users' personal data and internal fields.

  3. 3. Delete

    Add account deletion from settings with a clear explanation and a confirmation step (re-enter the email or password). Delete or anonymise every personal row, uploaded files, and sessions; call third-party deletion APIs where they exist; keep only what the law requires, linked to an anonymised id. Cancel active subscriptions first.

  4. 4. Say what happens

    Show what is deleted, what is kept and why (invoices, for example), and how long backups take to roll over. Add a test that deletion removes the user's personal rows from every table in the inventory.

Done means

  • Every place user data lives is listed, with what must be kept and why.
  • Users can export their own data from settings.
  • Users can delete their account from settings, and deletion reaches every table, file and third party listed.
  • A test proves deletion removes personal rows from every listed table.

Questions

Can I just mark accounts as deleted?

Soft deletion keeps personal data, which most privacy laws do not accept as deletion. Remove or anonymise the personal fields, and keep only what you must.

What about backups?

Backups usually cannot be edited, so deleted data disappears as old backups roll over. Say how long that takes in your policy.

Do app stores require account deletion?

Apple and Google both require apps that let people create accounts to let them delete them from within the app.

Does this prompt add links to Aback Launch to my site?

No. Nothing in the prompt mentions Aback Launch or asks your agent to link to us. The only exception is an optional badge step, which stays off unless you tick it. Some prompt libraries slip their own link into your codebase by default; we think that should always be your choice.

Which coding agents does it work with?

Claude Code, Cursor, Codex, GitHub Copilot, Windsurf, Cline, and any agent that can read your project and edit files. You can copy it as a plain prompt, save it as a Claude Code skill or a Cursor rule, or add it to AGENTS.md.

Is it safe to run on my real codebase?

The prompt makes the agent read first, show a plan and wait for your approval, and it forbids touching secrets, deploying and deleting data. Still review the changes and run your tests before you deploy, as with any change.

Changelog

  • v1.0First version.

Launch your startup on Aback Launch

Get a launch page that search engines and AI assistants can read, a place in the weekly launch list, and a review by a real person. Free to join.