Amplitude supports streaming transformed data to your destinations, including Custom Events, Derived Properties, Transformed Events, and Transformed Properties. You can select any transformation from your Amplitude taxonomy when configuring event streaming.
Setup
In Amplitude Data, click Catalog and select the Destinations tab.
In the Event Streaming section, click on any streaming destination tile.
Enter a sync name, then click Create Sync.
Toggle Status from Disabled to Enabled.
Paste your destination's Server Secret Key.
Toggle Send events to enable event streaming.
In Select and filter events, choose which events to send. Select only the events needed for your downstream destination. The dropdown includes any transformed events from your taxonomy.
(optional) In Select additional properties, select any event properties (including transformed event properties) to include. By default, Amplitude doesn't send any additional properties unless you explicitly select them.
(optional) In Select additional user properties, select any user properties to include. By default, Amplitude doesn't send any additional user properties unless you explicitly select them.
When satisfied with your configuration, click Save.
Example use cases
Streaming renamed events to AppsFlyer
AppsFlyer requires unique event names for attribution and doesn't support event properties. Previously, you had to create custom events in your backend and resend them to Amplitude. Now, you can use Amplitude Data to rename events before streaming them to AppsFlyer, which reduces duplicate ingestion.
Streaming derived properties to Braze
To improve campaign effectiveness, you can stream derived properties from Amplitude to Braze. Select derived properties in your sync filters and include them when configuring additional properties. This enables more targeted campaigns using enriched event data from Amplitude.
Considerations
Keep these things in mind when streaming transformations from Amplitude:
Amplitude sends selected event and user properties along with the event.
Amplitude targets an end-to-end p95 latency of 60 seconds. This means Amplitude streams 95% of events within 60 seconds. Amplitude has internal processes, monitors, and alerts in place to meet this target.
Transformation payload structure
The streaming payload includes transformations as nested JSON fields. Understanding this structure is essential when using custom FTL (FreeMarker Template Language) templates or configuring how your destination receives data.
Selection requirement
You must explicitly select transformations in your sync configuration to include them in the streaming payload. You can select transformations in:
Select and filter events: For example, filtering events where a derived property isn't null.
Select additional properties: To include specific transformed properties.
Map properties to destination: When mapping properties to your destination's schema (if applicable).
The streaming payload only includes transformations you explicitly select.
JSON structure
The payload includes transformations as nested JSON objects. The top-level field name depends on the transformation type:
Transformation Type
Top-level JSON Field Name
Merged properties
N/A (replaced in original field)
Derived properties
derived_properties
Channel properties
derived_properties
Lookup properties
lookup_properties
Field names within these objects match the transformation names displayed in the Amplitude UI.
Example payload
If you select a derived property called sample_derived_property_key1, the streaming payload looks like this:
Amplitude supports streaming custom events that meet specific criteria. When you create custom events in the Amplitude taxonomy, you can select them for event streaming if they're configured with:
Supported properties: User properties and event properties only
Supported operators:is, is not, contains, and does not contain
Custom events that use other property types or operators aren't available for selection in event streaming configurations.
Limitations
There are some limitations when streaming transformations from Amplitude:
When you rename custom events or derived properties, update any existing sync configurations that reference them. Syncs require current event and property names to work properly. Note: Changing the underlying definition of a transformation doesn't affect syncing. Only name changes require sync updates.
Lookup properties: You can stream lookup properties by requesting access from Amplitude. Lookup properties map existing event or user properties to new properties using a CSV file upload and can enrich already-ingested events at query time.
Lookup property files with over 1000 rows won't display in the streaming setup.
After saving a lookup property file, it can take up to one hour to populate into the streaming system.
Channel classifiers: To stream channel classifiers, request access from Amplitude. Channels act like derived properties applied in real-time during queries. Marketers primarily use channels to define acquisition channels based on UTM and referrer data. By default, you can't select channel properties in sync configuration (event filters or additional properties) unless you have already enabled this feature for your organization.
You can stream transformations to all streaming destinations except Data Warehouse destinations.
The streaming setup doesn't support the following transformation types:
Nested properties (for example, derived properties that rely on other derived properties). Exception: The UI allows selecting nested properties based on merged or cart properties, but these won't work in practice.
FAQ
Will this impact my event volume streaming limit?
Yes, this counts towards your existing event streaming volume limit. Check your event streaming limit by navigating to the Settings page and clicking on Plans & Billing.
Can I select both raw and transformed events/properties?
Yes, you can select both raw and transformed versions in your streaming sync. For example, if a transformation merges three event types into one transformed event, all four event types (the three originals plus the merged version) appear in the selection dropdown.
How does Amplitude handle custom events and transformed properties during streaming?
Custom events and transformed properties follow the configurations set in your Amplitude Data taxonomy. Amplitude applies transformations before it streams the data to the destination.
How can I enable channel classifiers for my event stream?
Amplitude can enable channel classifier selection in event streaming sync configurations on request. Email integrations@amplitude.com with your organization ID and app IDs to request access.