Importing and exporting data
Hydra has bulk CSV import for Leads, Contacts, and Accounts, and one-click CSV export on every list page (Leads, Contacts, Accounts, Tickets). Use them to migrate data from your old CRM, hand a snapshot to your accountant, or share a working list with someone outside Hydra.
Importing a CSV
Each list page has an Import button next to + New. Click it to open a four-step wizard.
1. Upload the CSV
Drag a .csv file onto the drop zone, or click to pick one. Hard cap is 50,000 rows per file — split bigger files into multiple imports.
The wizard uploads your CSV to a private storage bucket and parses the headers. You'll never see those rows after the import completes (we keep the file around until the job finishes, then it's eligible for cleanup).
2. Map columns
Each column from your CSV gets matched to a Hydra field. Hydra auto-detects familiar names — for example a column titled Email, Email Address, or Work Email will all map to Email automatically. Adjust any column the wizard guessed wrong, or set it to — skip this column — to ignore it entirely.
Required mappings:
- Lead imports: Email
- Contact imports: Email AND either Account Name or Account Domain (so the contact links to a real account)
- Account imports: Account Name
Two CSV columns can't map to the same Hydra field — the wizard will block the next step until you fix it.
3. Preview + dedup policy
You'll see the first five rows of your CSV transformed into Hydra fields, plus a question: what should happen when a row's email (or, for accounts, its domain) matches an existing record?
- Skip the row (default) — keep the existing record exactly as it is
- Update the existing record — fill in any of your CSV's mapped fields where Hydra's record has them empty. Optional "Overwrite mapped fields even when the existing value is non-empty" toggle for full overwrite. Hydra will never demote a contact back to a lead or change an account's lifecycle stage through this path.
- Create a new record anyway — pick this if you genuinely want duplicates
Rows whose dedup field (email or domain) is missing always go in as new records, regardless of policy.
4. Run
Click Import. The progress bar shows live counts of created / updated / skipped / errored rows. When the job finishes you'll receive an email with the summary. If any rows errored, a Download error CSV button appears — it's the original rows plus an _error_reason column so you can fix and re-upload.
You can leave the page during the import — refresh later with the same URL (?job=<id> is added automatically) and you'll rejoin the progress view.
Exporting a list
Every list page has an Export button. Clicking it downloads a CSV of the current filtered view in seconds.
| Page | What's in the CSV | Filters honored |
|---|---|---|
| Leads | Name, email, company, job title, phone, first seen, last seen | — |
| Contacts | Name, email, phone, job title, account name + domain, first seen, last seen | — |
| Accounts | Name, domain, industry, website, lifecycle stage, MRR, renewal info, created | — |
| Tickets | Title, status, priority, customer email/name, assigned admin, timestamps | Status tab |
Exports are streamed in batches so even tenants with hundreds of thousands of records don't time out.
Where exports go vs. tenant-wide exports
The list-page Export button is for the day-to-day "give me this view as a spreadsheet" need. Hydra also has a tenant-wide data export under Settings → Data Export that produces the full compliance-grade dump (every column, including audit fields) — that one is admin-only and writes an audit log entry. Use whichever fits the moment.
Common gotchas
- MRR formats — When importing accounts, MRR can be
$1,000,1000, or1000.00. All three are read as dollars and stored internally as cents. - Renewal dates —
2026-09-30is safest.Sep 30, 2026and9/30/2026work too. Anything Hydra can't parse becomes an error row. - Account lookup — Domain match wins over name match. If a CSV row has
account_domain=acme.com, Hydra finds an existing account with that domain even if the row'saccount_nameis "Acme Corp" and the existing account is "ACME, Inc." - Imports never delete — Importing a CSV with fewer rows than your existing data won't remove anything. Use the Hydra UI or the MCP API to delete records you don't want.
