ListMatchGenie

Data residency and regions

Your uploaded files are stored in the region you specify — US, EU, or UK — and never cross borders. Understand the regional architecture and how to choose correctly.

Every file you upload to ListMatchGenie is stored in a specific geographic region. Your files never cross into other regions unless you explicitly trigger a migration. This is how ListMatchGenie meets GDPR data-residency requirements, UK GDPR, and similar regulations in other jurisdictions.

The three regions

United States

Storage and processing in a US region. Default for customers with a US billing address.

European Union

Storage and processing in an EU region. Default for customers with an EU billing address. GDPR-compliant residency.

United Kingdom

Storage and processing in a UK region. Default for UK-billing customers. UK GDPR residency.

Region assignment

Your region is assigned at signup based on your billing address country:

  • US, Canada, Mexico, Latin America → US
  • EU member states + EEA (Norway, Iceland, Liechtenstein), Switzerland → EU
  • United Kingdom, Ireland exception: choosable → UK
  • Rest of world (APAC, Africa, etc.) → US by default (or your explicit choice)

You can override the default on the account settings page before you upload anything. After uploads exist, changing region triggers a migration (see below).

What stays in-region

Everything with your data in it:

  • Uploaded files (CSV, XLSX, etc.)
  • Cleansed and deduplicated versions of your files
  • Match results (every matched pair, every review decision)
  • Generated reports
  • Any shared-link content
  • Logs that contain row-level data

What does not stay in-region

A small number of account-management concerns are global:

  • User accounts (email, hashed password, profile name) — single global database, no PII
  • Subscription/billing state — handled by Stripe, regional per Stripe
  • Admin audit logs that don't contain customer data
  • Product telemetry (page views, feature usage) — anonymized, no row data

How matching works in-region

When you run a match:

  1. The match wizard and UI is served from global edge (Vercel)
  2. The match worker that reads your files is in your region
  3. The worker reads from your region's S3, holds data in memory during processing, writes results back to your region's S3
  4. The Genie's narrative generation is made from aggregate statistics only (never row data) — the stats are sent to a regional model endpoint

Your data never leaves your region during matching.

AI and the regional boundary

The Genie's AI generation runs on in-region AI endpoints in all three regions. When the Genie generates a narrative, aggregate statistics go to the regional endpoint, the model produces text, text comes back. Row data never crosses the boundary because row data is never sent in the first place. See PII and security.

Changing region

Go to Account → Settings → Region to change. The change triggers:

  1. A banner confirming: "Migrating your data from OLD to NEW. Estimated time: N minutes."
  2. Copy of every file to the new region
  3. Copy of every match job, report, and shared link
  4. Verification that new-region storage matches old-region source
  5. Deletion of old-region storage
  6. Update of your account's region indicator

During migration, the app remains usable but new uploads are paused. Typical migration time:

  • <100MB data: a few minutes
  • 1GB: ~30 minutes
  • 10GB+: several hours

If you have active shared links, their URLs stay the same after migration.

Data residency and the Subprocessor list

Every subprocessor we use operates in all three regions (AWS, Vercel for edge, Stripe for billing). The Data Processing Agreement lists every subprocessor with its role.