Online Ad Performance Metrics

This dataset provides detailed, synthetic logs of online ad campaign performance across multiple channels, capturing impressions, clicks, conversions, spend, and targeting details for each ad. It enables robust machine learning applications in ad optimization, audience targeting, and ROI prediction, supporting granular analysis by campaign, channel, device, and placement. Ideal for marketers, analysts, and data scientists seeking actionable insights into digital advertising effectiveness.

  • opened 17 times
  • last updated 20 Aug 2025
  • by GoMask
The brief that made it

Machine learning models for ad optimization and budget allocation

Sample rows

preview · 8 of 200 rows · all 16 columns
log_idstringchannelstringclicksintegerad_group_idstringcampaign_idstringad_idstringdatedateimpressionsintegerconversionsintegerspendfloatconversion_valuefloattargeting_criteriastringdevice_typestringplacementstringbid_typestringad_statusstring
A1b2C3d_social12850grp_01camp_101ad_0012024-06-01152430105412000.45142300broad, trending topics, NYCmobilefeedCPMactive
XyZ9_3pQdisplay320grp_02camp_102ad_0022024-06-02320045250.12100homeowners, age 35+, ChicagodesktopsidebarCPCactive
lMnoPqRsvideo41grp_03camp_103ad_0032024-06-038701758.7600grandparents, age 60+, Dallastabletpre-rollCPVcompleted
pQrS8tUvemail76blankcamp_104ad_0042024-06-046502342.31700VIP customers, BostondesktopinboxCPLcompleted
TuvWx_yZnative134blankcamp_105ad_0052024-06-0512004065.22200subscribed users, segment B, SeattledesktoparticleCPAcompleted
B7c8D9eFsearch390grp_04camp_106ad_0062024-06-064500572103300young professionals, LAmobilefeedCPCactive
CDEf_123display120grp_05camp_107ad_0072024-06-079801440.1800parents, age 30-45, MiamidesktopsidebarCPMactive
eFgH_IJKsocial5100grp_06camp_108ad_0082024-06-0868000350420032000broad, trending topics, LondonmobilefeedCPMactive

What the 200 rows show

from the 200-row sample

Social channel stands out: mean clicks is 19,365, against 346.2 for the rest.

  • 295median clicks
  • 4device types
  • 4ad statuses
  • 5placements
  • 5bid types
  • 1,802median impressions
Mean clicks by channel200 rows
010k20k686.1search32 rows19,365social33 rows637.3displ…39 rows39.1video30 rows57.0email33 rows241.1native33 rows
clicks200 rows, in bands of 5,000
085170167211737111025k45kclicks →

Median 295, from 0 to 43,100.

ad_group_id134 rows with a value · 66 left blank
  1. grp_196
  2. grp_045
  3. grp_085
  4. grp_135
  5. grp_205
  6. grp_215
  7. grp_014
  8. grp_024
  9. grp_034
  10. grp_054
16 columns by typefrom the column list below
  • string 10
  • integer 3
  • float 2
  • date 1

Columns

16 columns in three groups
blueprint · 16 columns
columntypedescriptionexample
Text 10 columns
log_idstringUnique identifier for each ad performance log entryuniqueA1b2C3d_
campaign_idstringUnique identifier for the ad campaigncamp_101
ad_idstringUnique identifier for the specific ad creativead_001
channelstringAdvertising channel where the ad was served (e.g., search, social, display)6 valuessocial
ad_group_idstringIdentifier for the ad group within the campaignoptionalgrp_01
targeting_criteriastringSummary of targeting criteria used (e.g., demographics, interests, location)optionalVIP customers, Boston
device_typestringType of device where the ad was displayed (e.g., mobile, desktop, tablet)mobile · desktop · tablet · other · optionalmobile
placementstringAd placement location (e.g., feed, sidebar, pre-roll)5 placements · optionalfeed
bid_typestringType of bidding strategy used (e.g., CPC, CPM, CPA)CPC · CPM · CPA · CPV · CPL · optionalCPM
ad_statusstringCurrent status of the ad (e.g., active, paused, completed)active · paused · completed · draft · optionalactive
Numbers 5 columns
impressionsintegerNumber of times the ad was shown0 or more152430
clicksintegerNumber of clicks the ad received0 or more12850
conversionsintegerNumber of conversion events attributed to the ad0 or more1054
spendfloatTotal spend on the ad for the given log entry (in USD)0 or more12000.45
conversion_valuefloatTotal value generated from conversions (in USD)0 or more · optional142300
Dates and times 1 column
datedateDate the log entry was recorded2024-06-01

15 SQL practice questions for the Online Ad Performance Metrics

Written for this data and checked against it: 12 SQL and 3 Power BI exercises from beginner to advanced. Try the first three free; the practice kit has all 15, a starter .sql file and an answer key with every expected result.

  1. 01BeginnerFreeSELECT · WHERE · ORDER BY

    Active search ads by spend

    Return log_id, campaign_id and spend for every row where channel is 'search' and ad_status is 'active'. Order by spend descending, then by log_id ascending.

    Tables: online_ad_performance_metrics · your result: 3 columns, 32 rows
  2. 02BeginnerFreeDISTINCT · ORDER BY

    Distinct placements per channel

    Return each distinct combination of channel and placement in the data, with the columns channel and placement. Order by channel, then by placement.

    Tables: online_ad_performance_metrics · your result: 2 columns, 6 rows
  3. 03BeginnerFreeGROUP BY · COUNT

    Rows per channel

    Count the log rows for each channel. Return channel and row_count, ordered by row_count descending, then by channel ascending.

    Tables: online_ad_performance_metrics · your result: 2 columns, 6 rows
  1. 04Total spend by deviceBeginner
  2. 05Conversion value by bid typePower BI
  3. 06Channels with high CTRIntermediate
  4. 07Spend size bucketsIntermediate
  5. 08Monthly spend and ROASIntermediate
  6. 09Channels above average CPCIntermediate
  7. 10Conversion rate by channelPower BI
  8. 11Top two campaigns per channelAdvanced
  9. 12Running spend by dateAdvanced
  10. 13Day-over-day impressions changeAdvanced
  11. 14Share of spend by channelAdvanced
  12. 15Percent of total spend visualPower BI

Get the practice kit: the full dataset, all 15 exercises, a starter .sql and the answer key. One-time $3.99.

Get the practice kit · $3.99

Use it for

  • median clicks295200 rowsmean clicks by channel686.1sear…19.4ksoci…637.3disp…39.1video

    A marketing dashboard

    Clicks by channel and a breakdown of ad_group_id. Excel, Power BI or Tableau.

  • Why do the 33 social rows have a mean clicks of 19,365?

    A root-cause class exercise

    Hand out the rows and one question. The answer is in the data, not in the brief.

  • A software demo

    Believable logs with campaign_id, ad_id and channel to fill a screen in front of a buyer.

Not quite right?

Make it yours.

Same 16 columns, your size and your rules. See 20 rows before you pay.

Preview 20 rows free

1,000 rows: $1.99 · 10,000: $12.99One-time. No subscription. All prices

This dataset200 rows16 columns
Yours1,000 rows16 columns

blueprint · online-ad-performance-metrics

Behind this dataset

Same schema. As many rows as you need.

These 200 rows came out of a blueprint — 16 columns with generation rules behind each one. Open it in Data Factory to retune a column, add your own, wire in foreign keys, and run it at the size you actually need.

Rules it was built with
  • Channel and campaign ID mapped
  • Impressions, clicks, conversions logged
  • Spend per campaign tracked
  • Time-of-day effects simulated
  • Include audience segment features
Rows
Open the blueprint in Data Factory

1 credit per row. Preview 20 rows free. Buy rows for the full run.

Exports
CSV, JSON, JSONL, Parquet, SQL, Excel, TSV, XML
Licence
yours to use, including commercially
API slug
online-ad-performance-metrics

What should your data show?

Preview 20 rows free
No signup. No card.