Snapchat Ads (v1)
Last updated: 9/15/2026Snapchat Ads is currently in beta. The info in this guide is subject to change.
This integration is powered by Singer's snapchat-ads tap and certified by Stitch. Check out and contribute to the repo on GitHub.
For support, contact Support.
Snapchat Ads integration summary
Stitch’s Snapchat Ads integration replicates data using the Snapchat Ads Marketing API. Refer to the Schema section for a list of objects available for replication.
Snapchat Ads feature snapshot
A high-level look at Stitch's Snapchat Ads (v1) integration, including release status, useful links, and the features supported in Stitch.
| STITCH | |||
| Release status |
Beta |
Supported by
|
|
|
Stitch plan
|
Standard |
API availability
|
Available
|
| Singer GitHub repository | |||
| REPLICATION SETTINGS | |||
|
Anchor Scheduling
|
Supported
|
Advanced Scheduling
|
Supported
|
|
Table-level reset
|
Unsupported
|
Configurable Replication Methods
|
Unsupported
|
| DATA SELECTION | |||
|
Table selection
|
Supported
|
Column selection
|
Supported
|
|
Select all
|
Supported
|
||
| TRANSPARENCY | |||
|
Extraction Logs
|
Supported
|
Loading Reports
|
Supported
|
Connecting Snapchat Ads
Step 1: Add Snapchat Ads as a Stitch data source
- Sign into your Stitch account.
-
On the Stitch Dashboard page, click the Add Integration button.
-
Click the Snapchat Ads icon.
-
Enter a name for the integration. This is the name that will display on the Stitch Dashboard for the integration; it’ll also be used to create the schema in your destination.
For example, the name “Stitch Snapchat Ads” would create a schema called
stitch_snapchat_adsin the destination. Note: Schema names cannot be changed after you save the integration. - If needed, set the following optional parameters:
- Omit Empty: Use this parameter to omit records for a given date or entity if there is no data for any of the metrics. The value can be
trueorfalse. The default value istrue. - Targeting Country Codes: Enter a comma-separated list of lowercase two-letter ISO country codes for ads targeting. The default value is
us. - Swipe Up Attribution Window: Enter the attribution window for swipe-ups. The value can be
1_DAY,7_DAY, or28_DAY. The default value is28_DAY. - View Attribution Window: Enter the attribution window for views. The value can be
1_HOUR,3_HOUR,6_HOUR,1_DAY,7_DAY, or28_DAY. The default value is1_DAY.
- Omit Empty: Use this parameter to omit records for a given date or entity if there is no data for any of the metrics. The value can be
Step 2: Define the historical replication start date
The Sync Historical Data setting defines the starting date for your Snapchat Ads integration. This means that data equal to or newer than this date will be replicated to your data warehouse.
Change this setting if you want to replicate data beyond Snapchat Ads’s default setting of 1 year. For a detailed look at historical replication jobs, check out the Syncing Historical SaaS Data guide.
Step 3: Create a replication schedule
In the Replication Frequency section, you’ll create the integration’s replication schedule. An integration’s replication schedule determines how often Stitch runs a replication job, and the time that job begins.
Snapchat Ads integrations support the following replication scheduling methods:
-
Advanced Scheduling using Cron (Advanced or Premium plans only)
To keep your row usage low, consider setting the integration to replicate less frequently. See the Understanding and Reducing Your Row Usage guide for tips on reducing your usage.
Step 4: Authorize Stitch
- Next, you’ll be prompted to log into your Snapchat account and approve Stitch’s access to your Snapchat Ads data. Note that we will only ever read your data.
- Click Authorize to connect.
- Sign in with your Snapchat account.
- After your credentials are validated, you’ll be directed back to Stitch and prompted to select the Snapchat Ads accounts you want to for which you want to run extractions.
- When finished, click Check and Save, then click All Done.
Step 5: Set objects to replicate
The last step is to select the tables and columns you want to replicate. Learn about the available tables for this integration.
Note: If a replication job is currently in progress, new selections won’t be used until the next job starts.
For Snapchat Ads integrations, you can select:
-
Individual tables and columns
-
All tables and columns
Click the tabs to view instructions for each selection method.
- In the integration’s Tables to Replicate tab, locate a table you want to replicate.
-
To track a table, click the checkbox next to the table’s name. A blue checkmark means the table is set to replicate.
-
To track a column, click the checkbox next to the column’s name. A blue checkmark means the column is set to replicate.
- Repeat this process for all the tables and columns you want to replicate.
- When finished, click the Finalize Your Selections button at the bottom of the screen to save your selections.
- Click into the integration from the Stitch Dashboard page.
-
Click the Tables to Replicate tab.
- In the list of tables, click the box next to the Table Names column.
-
In the menu that displays, click Track all Tables and Fields:

The Track all Tables and Fields menu in the Tables to Replicate tab - Click the Finalize Your Selections button at the bottom of the page to save your data selections.
Initial and historical replication jobs
After you finish setting up Snapchat Ads, its Sync Status may show as Pending on either the Stitch Dashboard or in the Integration Details page.
For a new integration, a Pending status indicates that Stitch is in the process of scheduling the initial replication job for the integration. This may take some time to complete.
Initial replication jobs with Anchor Scheduling
If using Anchor Scheduling, an initial replication job may not kick off immediately. This depends on the selected Replication Frequency and Anchor Time. Refer to the Anchor Scheduling documentation for more information.
Free historical data loads
The first seven days of replication, beginning when data is first replicated, are free. Rows replicated from the new integration during this time won’t count towards your quota. Stitch offers this as a way of testing new integrations, measuring usage, and ensuring historical data volumes don’t quickly consume your quota.
Snapchat Ads table reference
Schemas and versioning
Schemas and naming conventions can change from version to version, so we recommend verifying your integration’s version before continuing.
The schema and info displayed below is for version 1 of this integration.
This is the latest version of the Snapchat Ads integration.
Table and column names in your destination
Depending on your destination, table and column names may not appear as they are outlined below.
For example: Object names are lowercased in Redshift (CusTomERs > customers), while case is maintained in PostgreSQL destinations (CusTomERs > CusTomERs). Refer to the Loading Guide for your destination for more info.
ad_account_stats_daily
This endpoint retrieves the spend metric for the specified Ad Account at DAY granularity, the spend metric is the only metric available for the ad account entity
|
Key-based Incremental |
|
|
Primary Keys |
id start_time |
|
Replication Key |
end_time |
| Useful links |
ad_account_stats_hourly
This endpoint retrieves the spend metric for the specified Ad Account at HOUR granularity, the spend metric is the only metric available for the ad account entity
|
Key-based Incremental |
|
|
Primary Keys |
id start_time |
|
Replication Key |
end_time |
| Useful links |
ad_accounts
This stream retrieves all ad accounts for the specified Organization.
|
Key-based Incremental |
|
|
Primary Key |
id |
|
Replication Key |
updated_at |
| Useful links |
ad_squad_stats_daily
This stream retrieves stats for the specified Ad Squad at DAY granularity
|
Key-based Incremental |
|
|
Primary Keys |
id start_time |
|
Replication Key |
end_time |
| Useful links |
ad_squad_stats_hourly
This stream retrieves stats for the specified Ad Squad at HOUR granularity
|
Key-based Incremental |
|
|
Primary Keys |
id start_time |
|
Replication Key |
end_time |
| Useful links |
ad_squads
This stream retrieves all ad squads within a specified ad account.
|
Key-based Incremental |
|
|
Primary Key |
id |
|
Replication Key |
updated_at |
| Useful links |
ad_stats_daily
This stream retrieves stats for the specified Ad at DAY granularity
|
Key-based Incremental |
|
|
Primary Keys |
id start_time |
|
Replication Key |
end_time |
| Useful links |
ad_stats_hourly
This stream retrieves stats for the specified Ad at HOUR granularity
|
Key-based Incremental |
|
|
Primary Keys |
id start_time |
|
Replication Key |
end_time |
| Useful links |
ads
This stream retrieves all Ads under a specified Ad account
|
Key-based Incremental |
|
|
Primary Key |
id |
|
Replication Key |
updated_at |
| Useful links |
audience_segments
This stream retrieves all Customer List segments within a specified ad account.
|
Key-based Incremental |
|
|
Primary Key |
id |
|
Replication Key |
updated_at |
| Useful links |
billing_centers
Billing Centers allow Businesses to have multiple invoicing locations to choose from. A Billing Center is the contact that will be receiving invoices.
|
Key-based Incremental |
|
|
Primary Key |
id |
|
Replication Key |
updated_at |
| Useful links |
campaign_stats_daily
This stream retrieves stats for the specified Campaign at DAY granularity
|
Key-based Incremental |
|
|
Primary Keys |
id start_time |
|
Replication Key |
end_time |
| Useful links |
campaign_stats_hourly
This stream retrieves stats for the specified Campaign at HOUR granularity
|
Key-based Incremental |
|
|
Primary Keys |
id start_time |
|
Replication Key |
end_time |
| Useful links |
campaigns
This stream retrieves all campaigns within a specified ad account
|
Key-based Incremental |
|
|
Primary Key |
id |
|
Replication Key |
updated_at |
| Useful links |
creatives
This endpoint retrieves all creatives associated with an ad account
|
Key-based Incremental |
|
|
Primary Key |
id |
|
Replication Key |
updated_at |
| Useful links |
funding_sources
An Funding Source is owned by an Organization and defines the financial instrument/terms responsible for the ad spend. Funding sources are assigned to an Ad Account in order to pay for the activity within that Ad Account.
|
Key-based Incremental |
|
|
Primary Key |
id |
|
Replication Key |
updated_at |
| Useful links |
media
This stream retrieves all media entities associated with an ad account
|
Key-based Incremental |
|
|
Primary Key |
id |
|
Replication Key |
updated_at |
| Useful links |
members
This stream retrieves the information of all Members of an Organization
|
Key-based Incremental |
|
|
Primary Key |
id |
|
Replication Key |
updated_at |
| Useful links |
organizations
This stream retrieves all organizations.
|
Key-based Incremental |
|
|
Primary Key |
id |
|
Replication Key |
updated_at |
| Useful links |
phone_numbers
This stream retrieves all verified phone numbers for an Ad Account.
|
Key-based Incremental |
|
|
Primary Key |
id |
|
Replication Key |
updated_at |
| Useful links |
pixel_domain_stats
This stream retrieves the domains that have fired the pixel in the past 7 days.
|
Full Table |
|
|
Primary Key |
id |
| Useful links |
pixels
This stream retrieves the pixel associated with the specified Ad Account.
|
Key-based Incremental |
|
|
Primary Key |
id |
|
Replication Key |
updated_at |
| Useful links |
product_catalogs
This stream will retrieve a list of all the catalogs within an organization
|
Key-based Incremental |
|
|
Primary Key |
id |
|
Replication Key |
updated_at |
| Useful links |
product_sets
This stream will get all the Product Sets within the Catalog.
|
Full Table |
|
|
Primary Key |
id |
| Useful links |
roles
This stream retrieves all Roles assigned within an Organization
|
Full Table |
|
|
Primary Key |
id |
| Useful links |
targeting_advanced_demographics
This stream retrieves the list of Advanced Demographics targeting options
|
Full Table |
|
|
Primary Key |
id |
| Useful links |
targeting_age_groups
This stream retrieves the list of age group targeting options.
|
Full Table |
|
|
Primary Key |
id |
| Useful links |
targeting_android_versions
This stream retrieves the list of device OS version targeting options. These OS versions can then be used in targeting as os_version_min and os_version_max.
|
Full Table |
|
|
Primary Key |
id |
| Useful links |
targeting_carriers
This stream retrieves the list of device carrier targeting options.
|
Full Table |
|
|
Primary Key |
id |
| Useful links |
targeting_connection_types
This stream retrieves the list of device connection type targeting options.
|
Full Table |
|
|
Primary Key |
id |
| Useful links |
targeting_countries
This stream retrieves the list of country targeting options.
|
Full Table |
|
|
Primary Key |
id |
| Useful links |
targeting_device_makes
This stream retrieves the list of device make targeting options. Please note that specifying a parent level make option like Apple/ in the targeting spec will include all devices of the kind Apple/* like Apple/iPad (3rd Gen)/, Apple/iPhone 4/, Apple/iPhone 7 Plus/ etc.
|
Full Table |
|
|
Primary Key |
id |
| Useful links |
targeting_genders
This stream retrieves the list of gender targeting options.
|
Full Table |
|
|
Primary Key |
id |
| Useful links |
targeting_interests_dlxc
This stream retrieves the list of Oracle Datalogix DLXC targeting options.
|
Full Table |
|
|
Primary Key |
id |
| Useful links |
targeting_interests_dlxp
This stream retrieves the list of Oracle Datalogix DLXP targeting options.
|
Full Table |
|
|
Primary Key |
id |
| Useful links |
targeting_interests_dlxs
This stream retrieves the list of Oracle Datalogix DLXS Interests targeting options.
|
Full Table |
|
|
Primary Key |
id |
| Useful links |
targeting_interests_nln
This stream retrieves the list of Nielsen interest targeting options
|
Full Table |
|
|
Primary Key |
id |
| Useful links |
targeting_interests_plc
This stream retrieves the list of placed visitation segments targeting options by the specified country code
|
Full Table |
|
|
Primary Key |
id |
| Useful links |
targeting_interests_scls
This stream retrieves the list of Snap Lifestyle Categories targeting options by the specified country code
|
Full Table |
|
|
Primary Key |
id |
| Useful links |
targeting_ios_versions
This stream retrieves the list of device OS version targeting options. These OS versions can then be used in targeting as os_version_min and os_version_max.
|
Full Table |
|
|
Primary Key |
id |
| Useful links |
targeting_languages
This stream retrieves the list of language targeting options.
|
Full Table |
|
|
Primary Key |
id |
| Useful links |
targeting_location_categories
Location targeting allows an advertiser to target users based on their location.
|
Full Table |
|
|
Primary Key |
id |
| Useful links |
targeting_metros
This stream retrieves the list of metro/dma targeting options.
|
Full Table |
|
|
Primary Key |
id |
| Useful links |
targeting_os_types
This stream retrieves the list of device OS type targeting options.
|
Full Table |
|
|
Primary Key |
id |
| Useful links |
targeting_postal_codes
This stream retrieves the list of zipcode targeting options.
|
Full Table |
|
|
Primary Key |
id |
| Useful links |
targeting_regions
This stream retrieves the list of region/state targeting options.
|
Full Table |
|
|
Primary Key |
id |
| Useful links |