Support · Source connector
Amazon Ads ELT Connector
Extract brings Amazon Ads support data into data warehouses and databases for analysis with the rest of your business data. Teams use it to measure support workload, service quality, and customer experience. Flexible scheduling keeps reporting current for routine analysis and time-sensitive decisions.
View setup guide
Use cases
What teams use this connector for
Support performance reporting
Use Amazon Ads data to measure workload, response patterns, resolution trends, and service quality.
Customer health analysis
Combine Amazon Ads support activity with customer and product data to identify accounts needing attention.
Workload planning
Analyze Amazon Ads volume and issue trends to plan staffing, routing, and operational follow-up.
Flexible reporting cadence
Refresh Amazon Ads reporting every 15 minutes, hourly, daily, or on a custom schedule as business needs change.
Warehouse and database analysis
Use Extract to make Amazon Ads support data available in data warehouses and databases such as Snowflake, BigQuery, Redshift, and PostgreSQL for governed analysis.
Connector data
Available streams
| Stream | Description | Sync mode |
|---|---|---|
portfolios | Fields include portfolio_id, profile_id, _singular_extract_timestamp, budget__amount. | Full refresh |
profiles | Fields include profile_id, _singular_extract_timestamp, account_info__id, account_info__marketplace_string_id. | Full refresh |
sponsored_products_ad_groups | Fields include ad_group_id, campaign_id, portfolio_id, profile_id. | Full refresh |
sponsored_products_ad_groups_serving_status_details | Fields include ad_group_id, ad_group_name, portfolio_id, profile_id. | Incremental |
sponsored_products_advertiser_report | Fields include ad_group_id, ad_group_name, ad_id, campaign_id. | Incremental |
sponsored_products_campaign_adgroup_report | Fields include campaign_id, ad_group_id, ad_group_name, campaign_name. | Incremental |
sponsored_products_campaign_placement_report | Fields include campaign_id, placement_classification, campaign_name, campaign_status. | Incremental |
sponsored_products_campaigns | Fields include campaign_id, portfolio_id, profile_id, _singular_extract_timestamp. | Full refresh |
sponsored_products_campaigns_placement_bidding | Fields include campaign_id, campaign_name, portfolio_id, profile_id. | Incremental |
sponsored_products_campaigns_serving_status_details | Fields include campaign_id, campaign_name, portfolio_id, profile_id. | Incremental |
sponsored_products_campaigns_shopper_cohort_bidding | Fields include campaign_id, campaign_name, portfolio_id, profile_id. | Incremental |
sponsored_products_campaigns_tags | Fields include campaign_id, campaign_name, portfolio_id, profile_id. | Incremental |
sponsored_products_gross_and_invalid_traffic_report | Fields include campaign_name, campaign_status, profile_id, _singular_extract_timestamp. | Incremental |
sponsored_products_keywords | Fields include keyword_id, ad_group_id, campaign_id, portfolio_id. | Full refresh |
sponsored_products_keywords_serving_status_details | Fields include ad_group_id, keyword_id, portfolio_id, profile_id. | Incremental |
sponsored_products_negative_keywords | Fields include keyword_id, ad_group_id, campaign_id, portfolio_id. | Full refresh |
sponsored_products_negative_keywords_serving_status_details | Fields include ad_group_id, keyword_id, portfolio_id, profile_id. | Incremental |
sponsored_products_negative_targeting_clauses | Fields include target_id, ad_group_id, campaign_id, portfolio_id. | Full refresh |
sponsored_products_negative_targeting_clauses_expression | Fields include ad_group_id, portfolio_id, profile_id, target_id. | Incremental |
sponsored_products_negative_targeting_clauses_resolved_expression | Fields include ad_group_id, portfolio_id, profile_id, target_id. | Incremental |
sponsored_products_negative_targeting_clauses_serving_status_details | Fields include ad_group_id, portfolio_id, profile_id, target_id. | Incremental |
sponsored_products_product_ads | Fields include campaign_id, ad_group_id, _singular_extract_timestamp, ad_id. | Full refresh |
sponsored_products_product_ads_serving_status_details | Fields include ad_group_id, ad_id, portfolio_id, profile_id. | Incremental |
sponsored_products_purchased_product_report | Fields include ad_group_id, ad_group_name, campaign_id, campaign_name. | Incremental |
sponsored_products_search_term_report | Fields include ad_group_name, campaign_id, campaign_name, campaign_status. | Incremental |
sponsored_products_targeting_clauses | Fields include target_id, ad_group_id, campaign_id, portfolio_id. | Full refresh |
sponsored_products_targeting_clauses_expression | Fields include ad_group_id, portfolio_id, profile_id, target_id. | Incremental |
sponsored_products_targeting_clauses_resolved_expression | Fields include ad_group_id, portfolio_id, profile_id, target_id. | Incremental |
sponsored_products_targeting_clauses_serving_status_details | Fields include ad_group_id, portfolio_id, profile_id, target_id. | Incremental |
sponsored_products_targeting_report | Fields include ad_group_name, campaign_id, campaign_name, campaign_status. | Incremental |
Schema
Data model at a glance
portfolios
portfolio_idstringprofile_idstring_singular_extract_timestampstringbudget__amountnumberbudget__currency_codestringbudget__end_datestringbudget__policystringbudget__start_datestring
profiles
profile_idinteger_singular_extract_timestampstringaccount_info__idstringaccount_info__marketplace_string_idstringaccount_info__namestringaccount_info__sub_typestringaccount_info__typestringaccount_info__valid_payment_methodboolean
sponsored_products_ad_groups
ad_group_idstringcampaign_idstringportfolio_idintegerprofile_idinteger_singular_extract_timestampstringdefault_bidnumberextended_data__creation_date_timestringextended_data__last_update_date_timestring
sponsored_products_ad_groups_serving_status_details
ad_group_idstringad_group_namestringportfolio_idintegerprofile_idinteger_singular_extract_timestampstringhelp_urlstringmessagestringnamestring
sponsored_products_advertiser_report
ad_group_idintegerad_group_namestringad_idintegercampaign_idintegercampaign_namestringcampaign_statusstringportfolio_idintegerprofile_idstring
sponsored_products_campaign_adgroup_report
campaign_idintegerad_group_idintegerad_group_namestringcampaign_namestringcampaign_statusstringprofile_idstring_singular_extract_timestampstringad_statusstring
No verified relationships are available in this schema preview.
Connector pairings
Popular destinations
Commonly paired with Amazon Ads in Extract workflows.
Why Extract
Why Extract for Amazon Ads
- Rust-native performanceUse Rust-native data movement to refresh Amazon Ads reporting every 15 minutes, hourly, daily, or on a custom schedule as volume grows.
- Full run transparencyInspect Amazon Ads API activity, execution steps, and timing in Extract's run-level logs when data needs review.
- ELT + Reverse ETL in oneCombine Amazon Ads data with customer and finance models, then send approved outputs through a separately configured Reverse ETL destination.
FAQ
Frequently asked questions
How does Extract handle incremental and full Amazon Ads syncs?
An incremental sync processes only new or changed data since a stored checkpoint or new date partition, while a full sync processes the complete selected dataset or date range again. By avoiding repeated processing and writes for the full dataset, incremental syncs can reduce destination database updates and warehouse compute costs. Stream schemas define full refresh, incremental changes, partition-based extraction. Behavior varies by stream and configuration. Extract records run details so teams can verify each sync.
Can I backfill historical Amazon Ads data with Extract?
Historical coverage for Amazon Ads: Backfill (Days) (backfill): The backfill setting revisits and updates data from the past X days, ensuring the most current and accurate information replaces any previously pulled data. Use the setup guide and run details to confirm the available source records and selected settings.
How can teams monitor Amazon Ads data quality and freshness?
Compare expected reporting periods and record totals in your models, then use Extract's run-level logs to inspect Amazon Ads API activity, execution steps, and timing. This helps teams distinguish a source-data delay from a failed or incomplete run.
How often can Extract sync data from Amazon Ads?
Extract supports schedules every 15 minutes, hourly, daily, or on a custom cadence. Teams can choose a frequency that matches routine reporting, time-sensitive monitoring, or operational activation needs.
What does the Amazon Ads data model look like in the destination?
The Available streams table describes the datasets Extract can read from Amazon Ads. The inline schema previews entities and fields. Only relationships verified from the exported schema are shown. Use the full schema link for more details.