Advertising

Meta Ads schema

SightShark syncs Meta Ads into a data warehouse you own. It creates 15 tables holding 280 fields, refreshed daily. Account, campaign, ad set, ad and creative history, plus insights broken out by platform, device, age, gender and region.

15 tables / 280 fields / Tables from the production sync

Tables and fields

Every table this connector creates, and every field in it, named as you will query it.

report_basic_all_levels

23 fields

  • account_id
  • account_name
  • actions
  • ad_id
  • ad_name
  • adset_id
  • adset_name
  • campaign_id
  • campaign_name
  • clicks
  • cost_per_action_type
  • cost_per_inline_link_click
  • cpc
  • cpm
  • ctr
  • date_start
  • date_stop
  • frequency
  • impressions
  • inline_link_click_ctr
  • inline_link_clicks
  • reach
  • spend

report_delivery_platform_and_device

19 fields

  • account_id
  • actions
  • ad_id
  • clicks
  • cost_per_action_type
  • cost_per_inline_link_click
  • cpc
  • cpm
  • ctr
  • date_start
  • date_stop
  • device_platform
  • frequency
  • impressions
  • inline_link_click_ctr
  • inline_link_clicks
  • publisher_platform
  • reach
  • spend

report_demographics_age_and_gender

19 fields

  • account_id
  • actions
  • ad_id
  • age
  • clicks
  • cost_per_action_type
  • cost_per_inline_link_click
  • cpc
  • cpm
  • ctr
  • date_start
  • date_stop
  • frequency
  • gender
  • impressions
  • inline_link_click_ctr
  • inline_link_clicks
  • reach
  • spend

snapshots_campaign_history

22 fields

  • account_id
  • budget_remaining
  • buying_type
  • configured_status
  • created_time
  • daily_budget
  • effective_status
  • id
  • lifetime_budget
  • name
  • objective
  • pacing_type
  • promoted_object
  • special_ad_categories
  • special_ad_category
  • special_ad_category_country
  • spend_cap
  • start_time
  • status
  • stop_time
  • updated_time
  • snapshot_time

snapshots_ad_set_history

25 fields

  • account_id
  • adset_id
  • bid_amount
  • bid_strategy
  • billing_event
  • budget_remaining
  • campaign_id
  • configured_status
  • created_time
  • daily_budget
  • daily_spend_cap
  • destination_type
  • effective_status
  • end_time
  • id
  • is_dynamic_creative
  • lifetime_budget
  • name
  • optimization_goal
  • promoted_object
  • start_time
  • status
  • targeting
  • updated_time
  • snapshot_time

snapshots_creative_history

18 fields

  • account_id
  • body
  • call_to_action_type
  • effective_object_story_id
  • id
  • image_hash
  • image_url
  • name
  • object_id
  • object_story_id
  • object_story_spec
  • object_type
  • status
  • thumbnail_url
  • title
  • url_tags
  • video_id
  • snapshot_time

snapshots_account_history

35 fields

  • account_id
  • account_status
  • age
  • amount_spent
  • balance
  • business_city
  • business_country_code
  • business_name
  • business_state
  • business_street
  • business_street2
  • business_zip
  • capabilities
  • created_time
  • currency
  • disable_reason
  • end_advertiser
  • end_advertiser_name
  • funding_source
  • funding_source_details
  • id
  • is_personal
  • is_prepay_account
  • media_agency
  • min_daily_budget
  • name
  • owner
  • partner
  • spend_cap
  • timezone_id
  • timezone_name
  • timezone_offset_hours_utc
  • tos_accepted
  • user_tasks
  • snapshot_time

snapshots_ad_history

16 fields

  • account_id
  • adset_id
  • bid_amount
  • campaign_id
  • configured_status
  • conversion_domain
  • created_time
  • creative
  • effective_status
  • id
  • last_updated_by_app_id
  • name
  • preview_shareable_link
  • status
  • updated_time
  • snapshot_time

snapshots_ad_image_history

15 fields

  • account_id
  • created_time
  • hash
  • height
  • id
  • name
  • original_height
  • original_width
  • permalink_url
  • status
  • updated_time
  • url
  • url_128
  • width
  • snapshot_time

snapshots_ad_video_history

16 fields

  • account_id
  • content_category
  • created_time
  • description
  • embeddable
  • id
  • length
  • live_status
  • permalink_url
  • picture
  • published
  • title
  • universal_video_id
  • updated_time
  • views
  • snapshot_time

snapshots_ad_video_thumbnail

10 fields

  • account_id
  • height
  • id
  • is_preferred
  • name
  • scale
  • url
  • video_id
  • width
  • snapshot_time

snapshots_reach_frequency

8 fields

  • account_id
  • country_code
  • id
  • max_campaign_duration
  • max_days_to_finish
  • min_campaign_duration
  • min_reach_limits
  • snapshot_time

report_delivery_platform

18 fields

  • account_id
  • actions
  • ad_id
  • clicks
  • cost_per_action_type
  • cost_per_inline_link_click
  • cpc
  • cpm
  • ctr
  • date_start
  • date_stop
  • frequency
  • impressions
  • inline_link_click_ctr
  • inline_link_clicks
  • publisher_platform
  • reach
  • spend

report_demographics_country

18 fields

  • account_id
  • actions
  • ad_id
  • clicks
  • cost_per_action_type
  • cost_per_inline_link_click
  • country
  • cpc
  • cpm
  • ctr
  • date_start
  • date_stop
  • frequency
  • impressions
  • inline_link_click_ctr
  • inline_link_clicks
  • reach
  • spend

report_demographics_region

18 fields

  • account_id
  • actions
  • ad_id
  • clicks
  • cost_per_action_type
  • cost_per_inline_link_click
  • cpc
  • cpm
  • ctr
  • date_start
  • date_stop
  • frequency
  • impressions
  • inline_link_click_ctr
  • inline_link_clicks
  • reach
  • region
  • spend

Where it lands

Into a warehouse you already own, in a region you pick. The modelling runs inside that project, so nothing leaves your cloud to be transformed and we keep no copy of your history.

  • Google BigQuery
  • Snowflake
  • Databricks
  • AWS Redshift
  • Azure Synapse

Every ad platform names the same number differently and reports it in its own currency and its own time zone. Put two of them in one report without reconciling that and the totals disagree.

Questions people ask

What tables does SightShark create from Meta Ads?

15 tables, including report_basic_all_levels, report_delivery_platform_and_device, report_demographics_age_and_gender. report_basic_all_levels is one row per ad, per day. Every one is listed on this page, with its fields.

Which Meta Ads fields can I get?

All 280 listed fields are on this page, table by table, named as they appear in your warehouse.

How often does Meta Ads data refresh?

Daily. A sync adds to the tables rather than replacing them, so when a platform restates a figure for a day that has already closed, both the original number and the correction stay on record.

Can I join Meta Ads data to my other platforms?

Yes. Every metric is modelled to one name, one type, one grain and one currency, so a query across Meta Ads and another source needs no reconciling of field names first.

Related connectors

Get started

Want Meta Ads in your own warehouse?

A call with someone who can answer the schema questions.