How to export your data from Amplitude
Amplitude has no one-click 'export all my data' button in the UI. Raw event data is pulled out via the Export API as a zipped archive of JSON files for a chosen date/time range, or via a continuous export to a destination like Amazon S3, Azure Blob Storage, or Redshift for larger volumes.
✓ Verified against Amplitude's official documentation, September 2026
Step by step
- 1Know the limitation up front: there is no in-app button to export raw event or chart data as CSV — Amplitude only supports pulling raw data out via the Export API or a data destination
- 2Get your project's API Key and Secret Key from Amplitude project settings
- 3Pick the correct base URL for your data residency: https://amplitude.com for default region, https://analytics.eu.amplitude.com for EU-hosted projects
- 4Call GET https://amplitude.com/api/2/export with start and end query params in YYYYMMDDTHH format (e.g. start=20220101T00&end=20220101T23 for a full day), authenticated as -u '{api_key}:{secret_key}'
- 5Keep each request under the 365-day max range and the 4GB response size limit; if you get a 400 (too large) or 504 (timeout), shorten the date range
- 6Unzip the response — it contains multiple JSON files (possibly several per hour), one event object per line
- 7For volumes too large for the Export API, or for an ongoing/backfilled feed, set up an Amazon S3, Azure Blob Storage, or Redshift destination instead (Data > Manage > Destinations) and run a manual backfill for historical data
- 8Repeat the export per project — the Export API doesn't support cross-project views, so you must call it against each underlying project that ingested the data
What the export includes
- ✓Raw event-level data: event_type, event_time, server_received_time, user_id, device_id, amplitude_id, session_id
- ✓event_properties, user_properties, groups, and group_properties as nested objects
- ✓Device/platform/location metadata: platform, os_name, os_version, device_type, device_family, city, region, country, location_lat/lng, ip_address
- ✓Attribution and library metadata (amplitude_attribution_ids, library, version_name, start_version)
What it doesn't include
- ✗No selective export of raw data for a single chart or a single event via the UI — this is not supported at all
- ✗No CSV output — the Export API returns JSON only, inside a zip archive
- ✗No cross-project export in a single call — each underlying project must be exported separately
- ✗Charts, dashboards, cohorts, taxonomy/governance settings, and other workspace configuration are not part of this export
Before you start
- ⚠Event data is only available via the Export API about 2 hours after Amplitude's servers received it
- ⚠Max response size per request is 4GB — exceeding it returns a 400 error, so you must shorten the time range
- ⚠Max query window is 365 days per request
- ⚠Very large ranges can time out with a 504 — use the Amazon S3 destination instead for bulk/large-volume exports
- ⚠Events recorded before November 12, 2014 are grouped by day instead of by hour in the export
- ⚠EU-region projects must use the EU base URL (analytics.eu.amplitude.com), not the default amplitude.com host
Where to take your data
Free and cheaper tools that can take a Amplitude export. See all Amplitude alternatives →
Transform the exported JSON event records into PostHog's event capture format (event name, distinct_id/user_id, properties, timestamp) and send them via PostHog's capture/batch API or CSV import, mapping Amplitude's event_properties/user_properties to PostHog properties.
Heap Free
Use the unzipped JSON event files to backfill historical data via Heap's server-side track API, mapping Amplitude's event_type/event_properties to Heap event names and properties (Heap does not natively ingest Amplitude's export format, so a transform step is required).
Exporting from Amplitude: common questions
Can I export a CSV of raw data straight from an Amplitude chart?+
No. Amplitude does not support exporting the underlying raw event data for a chart or for a specific event in CSV form — you have to use the Export API (JSON) instead.
What format does Amplitude's Export API return?+
A zipped archive containing JSON files, with one event object per line; depending on volume there can be multiple files per hour of data.
Is there a size limit on the Export API?+
Yes, 4GB per request. If your requested range exceeds that, you get a 400 error and need to narrow the date range or use a bulk destination like Amazon S3.
Do I need a paid plan to export my data?+
The Export API itself just needs your project's API Key and Secret Key. Continuous export to Amazon S3/Azure Blob is limited to Scholarship, Growth, and Enterprise plans, and the SQL/Snowflake add-on requires Growth or Enterprise plus an extra purchase.
Can I export data across multiple Amplitude projects at once?+
No. The Export API doesn't support cross-project views, so you need to call it separately against each underlying project that ingested the data.
How current is the exported data?+
Data is available via the Export API roughly 2 hours after Amplitude's servers receive it; the API returns events timestamped in UTC based on server_upload_time.
Sources
This guide was written from Amplitude's own documentation and checked against it in September 2026. If a step has changed, the official page wins.
Amplitude head-to-head
More Analytics tools people are leaving
All Analytics alternatives →What would you save without Amplitude?
Pick your team size and see the yearly number.