Amazon Marketing Stream is recognized for delivering hourly data useful for dayparting. However, it also offers the most precise data with the least impact on a data pipeline, making it beneficial for systems that pull performance data from the Ads API.
The key advantage lies in its handling of "sales attribution". For instance, if you request a Targets Performance report for a specific date and repeat this request over the next 10 days, there's a high chance that the data from these reports will not match due to various factors, including the delay between an ad click and a purchase.
There are two strategies to deal with this when extracting data from the Ads API:
- Request Performance Report daily for the past 10 days, which for most brands will yield close to 100% attribution.
- Utilize Marketing Stream.
Marketing Stream resolves this issue by sending data messages continuously, unlike regular API report requests that provide metrics for specific dates. When a click from a previous date results in a sale today, Marketing Stream sends a message today and crucially attributes the sale to the time window of the last click.
This real-time data delivery eliminates the need for daily requests to capture all changes due to attribution. Pulling data for the previous 60 days every day could be an alternative, but it would significantly burden your pipeline and only update two metrics β Sales and Orders, which is inefficient.
Moreover, if you're pulling data for many brands, the data retrieval process could take hours and potentially lead to throttling issues. Amazon Marketing Stream operates differently than regular API requests, and the Amazon Ads team has recently improved it.