At PostHog we believe in your right to own your data - this means being able to export the raw events whenever you want.
There are several ways to export your events depending on your use case:
|PostHog UI - click "Export" on the events table||You need to export a small number of events||3,500 events|
|Events API||Great for one-off smaller exports||1 day date range and 3,500 events|
|Data export app||You need to export a large number of events||No limits|
If you're looking to migrate to a new PostHog instance follow the migrating between PostHog instances guide.
Not sure which export method to use?
Here's a decision tree you might find useful:
Using Data Export Apps
Popular apps for data export include the S3, Google Cloud Storage, BigQuery, PostgreSQL, Redshift, Snowflake. See the full list of data export apps, or find out how to build your own app.
To export your historical data you'll want to connect the app and then run a historical export.
Additionally, these apps stream all the new events to the destination. This keeps your destination up to date with new events as they come in.
Why are there limitations on the PostHog UI export and the events API?
The PostHog UI and the events API are designed to quickly respond with a small number of events. To prevent your queries running slower when another user is trying to export large numbers of events we've built a separate system for managing the exporting of large number of events using apps.