Daily Data Exports
Set up daily automated exports of Apphud transactional data
Daily Data Exports (or ETLs) push your Apphud transaction data to your own cloud storage in a structured, gzipped CSV format — once a day, automatically — so you can run downstream analytics, build data warehouses, or feed BI tools without writing any extraction code.
NoteDaily Data Exports (ETL) are available on Expert and Enterprise plans.
How Daily Data Exports work
Once enabled, Apphud automatically exports transaction data to your Cloud Storage Provider every day. Data is uploaded as a gzip-compressed .csv file.
Export Process
- Initial Data Export. When you first enable data exports, all historical data available in Apphud is included in the first export, so you start with a complete dataset.
- Ongoing Daily Exports. After the initial export, only new data generated since the last export is included in subsequent daily exports. Data is exported once per day.
- Handling Paused and Re-Activated Exports. If the ETL export is paused and later reactivated, the first export after reactivation includes all data generated during the paused period. No data is lost, and the dataset stays complete from the last successful export before the pause. After this catch-up export, daily incremental updates resume as usual.
Data Format
| Column Name | Nullable? | Description |
|---|---|---|
id | No | Unique identifier for the event |
created_at | No | Date and time the event was created in Apphud |
updated_at | No | Date and time the event was last updated in Apphud |
event_name | No | Name of the event (e.g., trial_started) |
purchased_at | No | Date and time the purchase occurred |
expires_at | Yes | Expiration date for auto-renewable subscriptions |
cancelled_at | Yes | Date of refund |
original_transaction_id | No | Original Transaction ID (also known as the purchase token in the Play Store) |
transaction_id | No | Transaction ID (Order ID on Android) |
price_usd | No | Transaction price in USD |
price | No | Transaction price in the local currency |
proceeds_usd | No | Proceeds (revenue) amount in USD |
proceeds | No | Proceeds (revenue) amount in the local currency |
quantity | No | Quantity of items purchased (always 1) |
commission | No | Commission amount (0.30 or 0.15) |
product_id | No | Product identifier |
trial_period | No | Indicates whether the transaction is for a free trial |
intro_period | No | Indicates whether the transaction is within the introductory period |
is_upgraded | No | Indicates whether the subscription was upgraded (true/false) |
family_shared | No | Indicates if the transaction belongs to a family-shared subscription (is free) |
subscription_type | No | Type of subscription: auto-renewable or non-renewable |
environment | No | Environment of the transaction: production or sandbox |
user_id | No | Public user identifier |
internal_user_id | No | Internal user identifier |
currency | No | Currency code |
store_country | No | Purchase store country code (e.g., US) |
store | No | App store where the purchase was made (e.g., app_store or play_store) |
install_date | No | Latest app install date |
subscription_length | No | Length of the subscription period (e.g., 1W, 1M, 3M, etc.) |
trial_length | Yes | Length of the free trial period (e.g., 3D, 7D, 1W, etc.) |
Attribution data is not part of daily data exports.If you need attribution data alongside transactions, send events through an Attribution integration or via Server-to-Server Webhooks / the Customers API.
Available Cloud Storage Providers
Updated about 1 month ago
Did this page help you?
