LookML view · advertising-marketing-small
How this LookML view models browser, OS, publisher and impression traffic
At a glance
Does Exposes raw ad impression rows with browser, OS, user agent, IP, geography, subid, campaign, creative and bid amount. It defines two measures: an impression count and sum_of_bids . Trust: Source-defined
Why Built to examine traffic from unusual browsers and operating systems, and to see which publishers and user agents earn bid revenue from it. The view name and its dashboard title both point that way. Trust: InferredGrain One row per ad impression. Nothing enforces this: there is no primary key and count is a plain row count. Trust: Inferred
Source advertising_marketing_small/other_browser_os_impressions.view.lookml 63 lines
Source: other_browser_os_impressions.view.lookml L1-10
Shape Trust: Source-defined
Every field as declared, with the dashboard tiles that read it. Computed from the source; nothing here is edited.
Table: defaults to other_browser_os_impressions (no sql_table_name).
Relationships Trust: Source-defined
Relationships of other_browser_os_impressions
Text version other_browser_os_impressions is the base view of other_browser_os_impressions: base view other_browser_os_impressions is read by default: 8 tiles
Filters and exclusions that change meaning
Dashboard default country = US reaches no tile Trust: Source-defined
The dashboard declares a country filter with default US, but no tile listens to it. Every tile counts all countries.
Source: default.dashboard.lookml L6-10
Tiles filter different populations Trust: Source-defined
Three revenue tiles drop empty domain , the IP tile drops empty ip , and the Unusual UAs table drops UAs starting Mozilla/5.0. The same count means a different set of rows on each tile.
Source: default.dashboard.lookml L35-47
Worth noticing
The publisher id is parsed from subid Trust: Source-defined
pid takes the second dash-separated segment of subid with MySQL substring_index. It is the only derived field, and the grouping key for the top PID tiles.
Source: other_browser_os_impressions.view.lookml L43-44
Bid revenue sums the raw column Trust: Source-defined
sum_of_bids sums ${TABLE}.bid_amount directly instead of referencing the bid_amount dimension. Its drill set shows pid, advertiser and bid per row.
Source: other_browser_os_impressions.view.lookml L49-54
time is a plain string dimension Trust: Source-defined
time is declared as a dimension, not a dimension_group, so there are no date, week or month timeframes to filter or trend on.
Source: other_browser_os_impressions.view.lookml L37-38
What can change the answer 4
!
Caution: PID parsing assumes a fixed subid formatTrust: Inferred
With no dash, substring_index returns the whole subid. With one dash, it returns the last segment. Neither case becomes NULL.
What goes wrong: Bid revenue from malformed subids is credited to an invented PID, and the top PID tiles can rank that junk value.
Read the guide: Parsing ids from strings
Source: other_browser_os_impressions.view.lookml L43-44
!
Caution: The country filter looks applied but is notTrust: Source-defined
The filter bar shows country = US by default, yet no tile has a listen binding.
What goes wrong: A screenshot labelled US is reporting global impressions and bids.
Read the guide: Filters that change metric meaning
Source: default.dashboard.lookml L6-10
!
Caution: No click or conversion rate can be built hereTrust: Source-defined
Clicks and conversions live in separate views keyed only by IP, and the model declares no joins. There is no source-defined CTR.
What goes wrong: A CTR made by dividing counts from two explores divides different populations.
Read the guide: CTR from separate tables
Source: odd_browser_and_os_analysis.model.lookml L5-13
i
Note: No primary keyTrust: Source-defined
The view declares no primary_key. That is harmless while the explore has no joins. Any future join makes count and sum_of_bids unsafe to aggregate.
Read the guide: Primary keys and counts
Source: other_browser_os_impressions.view.lookml L45-48
Parser checks 1 Trust: Source-defined
Mechanical findings from parsing the LookML. They are facts about the files. The cards above explain which ones matter.
Show all 1 check
no-primary-key 1 other_browser_os_impressions.view.lookml:1 other_browser_os_impressions declares no primary_key.
Related
Guides built on this file
Guide
Using user agents to flag non-browser ad impressions
How a real ad-tech model flags impressions from clients that are not ordinary browsers, which publishers send them, and where its user-agent rule misleads.
Acquisition
Guide
Using IP clusters to investigate suspicious ad traffic
How a real ad-tech model groups IPs by how widely they spread across geos, publishers and user agents, and why its cluster labels never reach the traffic.
Acquisition
Guide
Checking whether a few publishers earn most of the revenue
How a real ad-tech model ranks publishers by bid revenue, why a ranking is not a concentration measure, and what its parsed publisher id hides.
Revenue
Guide
Filters that quietly change what a metric means
Why two reports disagree on one metric: hidden default filters, tile filters and unwired dashboard filters, with a checklist and real examples.
Best practices Acquisition Retention
Guide
Calculating CTR from separate impression and click tables
When clicks and impressions live in separate tables, a rate needs one population and one grain. How to check, with real tables that share neither.
Best practices Acquisition
Guide
Checking the primary key before you trust a count
A count is only as clear as the key behind it. How to state and test a table's grain, with real tables whose keys repeat, merge rows or are missing.
Best practices Revenue Retention
Guide
Why parsing ids out of strings at query time is risky
An id parsed from a string at query time turns malformed values into fake ids. A real publisher id parsed from a subid, and SQL that returns NULL instead.
Best practices Acquisition
Related source files Source model