| Randomisation unit | Default user-level (hashed device/user ID) when the platform controls per-user delivery. Fall back to geo-level when you can't isolate at the user level — new channel entirely, offline/halo effects, or risk of spillover between a treated and a control user (social/viral products). |
| Ghost / PSA ads | Control still gets served a neutral placeholder ad instead of nothing. Preserves attention parity (both groups had a slot filled) AND budget/auction parity (control still spends, still competes) — so any measured difference is attributable to ad content, not delivery mechanics. |
| Holdout test (ads vs. no ads) | Answers: does advertising drive any incremental effect at all. Budget symmetry across arms is the thing you protect. |
| Add-on test (BAU vs. BAU+format) | Answers: is this specific new element worth its incremental spend. Budget asymmetry is expected — what you protect instead is that the add-on's budget is genuinely incremental, not reallocated from BAU, and that its impressions are additive reach rather than cannibalising BAU delivery on the same users. |
| Mid-flight budget shifts | Never reallocate between arms while a test is running — an adaptive/bandit-style shift breaks random assignment and invalidates the causal read. Smart/auto-bidding that only "sees" conversions in treatment will also self-select toward easy converters — freeze targeting + bid strategy identically across arms for the test duration. |
| ⚠️ Why Smart Campaign Solutions is bandit-like | A multi-armed bandit continuously re-weights its allocation while running, favouring whatever "arm" looks best so far (exploit), while still occasionally testing others (explore) — the key property is that the assignment mechanism reacts to outcomes as they arrive, not just once upfront. Smart Campaign Solutions does exactly this: it ingests conversion signal in real time and shifts delivery toward whatever impression/user/creative is currently predicted to convert best — the "learning phase" you'll see referenced is literally its explore stage before it concentrates (exploits) on what's working. Why it breaks a classical fixed-design test: a valid A/B/lift-test estimate needs the assignment mechanism to be fixed and outcome-blind for the whole run. If the algorithm can "see" conversions in treatment but not a holdout control, it will progressively skew treatment delivery toward users it already predicts will convert — inflating your lift estimate with a selection effect, not a real causal one. The fix isn't disabling the bandit behaviour, it's making sure it can't behave asymmetrically between your test arms. |
| Power / MDE | Minimum Detectable Effect shrinks with more users, longer duration, and lower outcome variance. Sanity-check on the spot: bigger baseline variance (e.g. high-value whale spenders) needs a larger sample or a capped/winsorised metric to stay powered. |
| Underpowered vs. true null | A flat result could mean "no effect" or "not enough data to tell." Always check the CI/MDE before declaring a null — especially when it contradicts a plausible mechanism. |
| Learning agenda | A structured, prioritised testing roadmap for a top advertiser — a proactive experiment setup (a sequence of real, randomised tests run going forward), not an analysis template for interpreting data you already have. JD-named term, scoped specifically to top advertisers — distinct from the "scaled/self-serve" framing that applies to the broader book. Programmatic here means systematic and repeatable, not automated. |
| ⚠️ The sequence is advertiser-specific, not a template | There's no universal lever order (e.g. "always frequency cap first") — that would assume every advertiser shares the same bottleneck, which they don't. What generalises is the logic, not the lever list: (1) clear confounds first (tracking integrity, no active fatigue/overlap distorting the baseline) — universal; (2) respect dependencies — test upstream levers before downstream ones that need a stable baseline to read cleanly; (3) manage risk cheap-to-expensive — fast, reversible tests before slow, costly ones; (4) let this advertiser's own driver analysis pick the actual first test — the binding constraint, not a copy-paste starting point. Two advertisers can apply the identical method and land on completely different first tests: a mature gaming title whose driver analysis flags self-cannibalisation starts with an audience-exclusion test; a new e-commerce advertiser whose driver analysis flags catalog data quality starts with a catalog audit, before any lift test — not a frequency cap for either. |
| The naive setup | Two campaigns in the same campaign group, identical except bid strategy (campaign A = manual, campaign B = Smart Campaign Solutions). Matches every setting you configured — but that's necessary, not sufficient. |
| The hidden confound | If both campaigns can target overlapping audiences (the default), they're both eligible to bid on the same users at the same time — your own campaigns compete against each other in the auction. Smart Campaign Solutions predicts per-impression value and bids more aggressively, so it systematically wins the shared, easy-to-convert users, leaving manual the leftover harder inventory. The resulting cost/outcome gap then reflects who won the shared auction, not which bidding methodology is better — self-competition, not a clean causal read. |
| The fix | Split the eligible audience into two disjoint pools before either campaign launches (geo split, audience-exclusion lists, or a platform-level user split). Assign campaign A to pool 1 only, campaign B to pool 2 only. Only then does "only the bidding setup differs" hold at the level that matters — the populations being bid for don't overlap. |
| Everything else to hold equal | Equal (or pool-size-proportional) budget per arm, identical targeting template and creative, same start time, and enough duration to cover Smart Campaign Solutions' learning phase before reading out. |
| Read-out | Compare realised cost-per-outcome at equal spend, not totals. If automation wins, check audience composition/reach too — did it find genuinely higher-value users, or just out-bid for a narrower, already-easy slice at the same spend. |
| Product-side drivers | Creative/format quality, targeting/audience mix, catalog data quality (Dynamic Product Ads), frequency/fatigue, placement mix — what's being shown, to whom. |
| Auction-side drivers | Bid strategy, budget pacing, delivery/competition density, CPM trends, Smart Campaign Solutions optimisation settings — how it's being bought. |
| Feeding vertical leads | The JD frames this role as producing inputs for vertical marketing science leaders (gaming, e-commerce) to hypothesis-test — this role is horizontal/China-wide, verticals own deeper strategy. Frame driver-analysis output as a prioritised hypothesis list, not a unilateral decision. |
| Regression vs. random forest | Regression when you need interpretable, signed coefficients to build a Sales narrative ("+1pt CTR associates with +X ROAS"). Random forest / GBM when you want ranked feature importance and can tolerate less interpretability, or the relationship is non-linear / has interactions. Both are associational — flag that top drivers should be validated with a test, not treated as causal on sight. |
| Multicollinearity | Correlated predictors (e.g. impressions and reach) make individual coefficients unstable/hard to interpret even if the overall model fits well. Check VIF, or just reason about which channels move together. |
| p-value / CI / power (recap) | p-value = P(data this extreme | null true). 95% CI excludes 0 ⇔ significant at α=0.05. Power = P(detect a real effect) = 1−β, driven up by more n, bigger true effect, lower variance, higher α. |
| CLT on skewed ad metrics | Revenue/user or ROAS per campaign is heavily skewed (zero-inflated + a long tail of whales), but you're doing inference on the mean, so CLT still makes z/t-tests valid at scale. The real risk is power (huge variance → large MDE) and a single whale flipping the result — fix with capping/winsorising, decomposing into rate × value-given-conversion, or CUPED on pre-period spend. |
| Optional stopping / peeking | Checking a live test and stopping the moment p<0.05 inflates the true false-positive rate — predefine sample size/duration, or use sequential testing if you must monitor live. |
| R² / adjusted R² | Share of variance explained. Not the goal — a high R² on the same data you fit on says nothing about generalisation. Adjusted R² penalises adding useless predictors; prefer it when comparing models with different predictor counts. |
| Residual diagnostics | Plot residuals vs. fitted values — a pattern (fan shape, curve) signals heteroscedasticity or a missed non-linearity, both of which bias your standard errors even if the coefficient estimate itself is fine. |
| Coefficient significance | A "driver" should clear its own p-value/CI, not just have the right sign — check each coefficient's SE, not just the model's overall R². |
| Outliers / influential points | A handful of whale advertisers or campaigns can dominate a regression — check leverage / Cook's distance, not just eyeball the scatterplot. Ties back to the CLT/whale problem above. |
| ⚠️ Endogeneity / reverse causality | The sharpest trap for auction-side drivers specifically: bid amount often rises because a campaign is already performing well (advertiser/algorithm reacting to success), not the other way round. Regressing performance on bid without accounting for this direction gets the causal story backwards. Flag it, and reach for the same toolkit as the experimentation section — a randomised bid-strategy test, not another regression — to actually resolve it. |
| Omitted variable bias | A missing confounder (seasonality, a competitor's campaign, a platform-wide auction shift) that affects both the driver and the outcome will bias the coefficient on the driver you did include. Name a plausible omitted variable before trusting a coefficient. |
| Creative fatigue | CTR decays as the same users see the same ad repeatedly. Check: frequency vs. CTR-decay curve. |
| Format mismatch | A static image underperforming vs. AR Lens/video for an awareness-stage objective, or vice versa for a direct-response objective. Check: format-level CTR/IPM cut by campaign objective. |
| Catalog data quality | Stale pricing or out-of-stock items in Dynamic Product Ads. Check: feed error/out-of-stock rate vs. conversion rate. E-commerce-specific. |
| Targeting too broad or too narrow | Lookalike seed too small, or targeting overlapping with the existing installed base (self-cannibalisation). Check: audience overlap with the current user base, lookalike seed size. Self-cannibalisation is especially relevant for gaming UA. |
| Tracking/measurement artifact, not a real product problem | Snap Pixel/SDK event misfiring reads as "poor performance" when it's actually a broken conversion signal. Check: event-fire rate vs. expected volume — rule this out first, it's the "real vs. artifact" check. |
| Landing/store-listing drop-off | Click-to-install gap separate from ad quality. Check: click-to-store-page rate vs. store-page-to-install rate, to isolate ad vs. app-store-listing. Gaming-specific. |
| Bid strategy misaligned with the true objective | Optimising for install when LTV is the real goal. Check: optimisation event vs. stated business objective. |
| Budget pacing frontloading | Budget exhausted early in the day, missing high-value auction windows later. Check: hourly spend-pacing curve vs. conversion-rate-by-hour. |
| Auction competition density spike | CPMs rising because of a seasonal/competitive surge (e.g. other advertisers ramping for a shopping festival), not anything the advertiser did. Check: CPM trend vs. category-wide spend, not just the campaign's own numbers. |
| Smart Campaign Solutions in learning phase | Delivery/CPA unstable early on. Check: days-since-launch and conversion volume vs. the platform's stabilisation threshold. |
| Bid cap too conservative | Losing high-value auctions because the cap is set below true value. Check: win-rate vs. bid cap, lost-auction volume. |
| Endogeneity | Bid raised because performance was already good, not the cause of it. Check: whether the bid change precedes or follows the performance shift in the time series. |
| 1. Clarify | Confirm the window, whether it's one advertiser or many, and — critically — whether spend is fixed (budget-capped) or variable during this period. That distinction changes how a CPM move translates into a revenue move. |
| 2. Real vs. artifact | Rule out a broken Snap Pixel/Conversions API event, an attribution-window change, or an iOS ATT-related tracking dip before hypothesising a real performance cause. |
| 3. Decompose | ROAS = Revenue ÷ Spend = (Impressions × CTR × CVR × AOV) ÷ Spend. Since Spend = Impressions × CPM ÷ 1000, this simplifies to ROAS = 1000 × (CTR × CVR × AOV) ÷ CPM — four candidate levers: CPM ↑ = auction-side; CTR ↓ / CVR ↓ / AOV ↓ = product-side (CVR also needs its own real-vs-artifact check). |
| Week 1 | Week 2 | |
|---|---|---|
| Spend (fixed budget) | $50,000 | $50,000 |
| CPM | $5.00 | $5.90 (+18%) |
| Impressions | 10,000,000 | 8,500,000 (−15%) |
| CTR | 1.2% | 1.2% (flat) |
| CVR | 2.5% | 2.5% (flat) |
| AOV | $50 | $50 (flat) |
| Revenue | $150,000 | $127,500 |
| ROAS | 3.0 | 2.55 (−15%) |
| Reading it | CTR, CVR, and AOV are all flat — the entire drop is arithmetically explained by CPM rising 18%, which under a fixed budget mechanically buys 15% fewer impressions; revenue scales down proportionally since per-impression conversion behaviour didn't change. This is an auction-side story — nothing about creative, targeting, or catalog needs to have changed. |
| 4. The simple rule | CTR/CVR moving for the same audience segment → content problem. CPM rising with impressions dropping → auction problem. The one guard: check CTR/CVR within a fixed segment, not the blended average — a different placement/audience mix at the new CPM can move the blended rate even when nothing about the content changed. |
| 5. Recommend | Given confirmed rising competitive CPM: (a) raise budget to restore impression volume, if incremental ROAS at the new CPM still clears the advertiser's threshold, or (b) test an alternative bid strategy via the disjoint-audience-pool method-comparison design. Close with a threshold, not just a finding: "if CPM reverts within two weeks, this was a temporary competitive spike, no action needed; if sustained, I'd propose the bid-strategy test." |
| 1. Clarify | Which market, what window, is spend fixed — and confirm "installs" means the same thing across sources: Snap-attributed installs via the MMP (e.g. AppsFlyer/Adjust), not raw app-store installs from all sources. |
| 2. Real vs. artifact — bigger risk here than in a pure e-commerce case | Gaming UA measurement runs through an MMP and, on iOS, SKAdNetwork — both are fragile. Check: did the MMP postback/SDK integration break or change version? Did the SKAdNetwork conversion-value mapping shift (can silently suppress reported installs with no real drop)? Was there a recent app update that got store-rejected or delayed, or a spike in negative reviews affecting the store listing? Cross-check the "drop" against a second source (the app store's own console) before trusting it's real. |
| 3. Decompose | Installs = Impressions × CTR × Install rate (click-to-store-conversion). A drop comes from fewer impressions (auction-side), lower CTR (product-side), or a lower install rate (product-side, or a store-listing artifact). |
| 4. Hypothesise — auction-side | CPM spiked because a competing title (another MOBA/battle-royale) is running a big UA push in the same market this week — fixed budget buys fewer impressions. Same simple rule as before: CPM up + impressions down → auction problem. |
| 4. Hypothesise — product-side, the one specific to a mature title | Self-cannibalisation / audience saturation. As a UA campaign matures in a market, broad or lookalike targeting increasingly reaches people who already have the game installed — they can't install again, so the effective new-install rate decays even though the targeting settings look unchanged. This is the sharpest hypothesis to volunteer for an established title like Honor of Kings, and it's a direct application of the audience-overlap driver from the product-side hypothesis table above. |
| 4. Hypothesise — product-side, alternatives | Creative fatigue (same UA creative run too long without a frequency cap), or a store-listing conversion problem (bad reviews, a confusing new store screenshot set post-update). |
| 5. Investigate | Pull CTR and install rate within a fixed audience/placement segment — same rule as the ROAS case. Check the overlap % between the targeted audience and the existing installed base if available — a rising overlap over time is the direct signature of self-cannibalisation. Check CPM/win-rate trend to confirm or rule out the competitive-spike story. Check app-store rating trend and listing status to rule out the store-conversion story. |
| 6. Recommend | If self-cannibalisation: refresh/tighten the lookalike seed and explicitly exclude the existing-user audience, then validate with an add-on-style test before rolling out broadly. If competitive CPM spike: same auction-side response as the ROAS case. If creative fatigue: propose a creative-refresh test. Close with a threshold: "if install rate recovers within the fixed segment after the audience-exclusion fix, that confirms self-cannibalisation was the driver." |
| Fixed-effect vs. random-effects | Fixed-effect assumes every study shares one true effect; pools by weight w_i = 1/v_i (its own sampling variance alone) — a single huge study can dominate. Random-effects assumes each study has its own true effect drawn from a population of effects; pools by w_i = 1/(v_i + τ²), adding between-study heterogeneity τ² to every denominator — flatter weighting, more honest, almost always the right choice given real advertiser-to-advertiser differences. |
| DerSimonian-Laird (DL) / REML | The standard frequentist random-effects estimators. Both are effectively Empirical Bayes: estimate τ² once (DL via Cochran's Q, REML via iterative likelihood), then treat it as known for everything downstream. Simple, but doesn't express uncertainty about τ² itself. |
| Bayesian hierarchical model | Same two-level model, but τ² gets a prior instead of a point estimate, producing a full posterior over τ², μ, and every study's own effect θᵢ. Properly propagates τ²'s own uncertainty into μ's uncertainty, and gives a direct probability statement (e.g. "92% probability the true lift is positive") instead of a p-value. |
| ⚠️ Small k (few studies), not small n | The fragile input to frequentist methods is the number of studies being pooled, not the size of each individual study — ad-tech lift tests usually have plenty of users each. With few studies (a realistic scenario pooling one vertical), τ² estimates get noisy and DL can even floor τ² at zero, giving a falsely narrow CI. Fix: a Knapp-Hartung t-distribution adjustment on the frequentist side, or default to Bayesian, which stays honestly wide with few studies. |
| Shrinkage — pooling weight vs. shrinkage weight | Two different formulas, not one reused. Pooling (getting μ) combines v_i and τ² into one denominator: 1/(v_i+τ²). Shrinkage (getting one study's own θᵢ) keeps them separate — a precision-weighted average of that study's own data (weight 1/v_i) and the pooled μ (weight 1/τ²). A noisy/small advertiser shrinks hard toward μ; a large precise advertiser barely moves — every advertiser gets an improved estimate, not just one overall number. |
| ⚠️ The selection-bias trap | Input has to be every internal lift test run, including nulls — not published "case studies" (like the SHEIN/VOGACLOSET numbers on the Products tab), which are a pre-selected sample of wins. Pooling from published success stories biases the estimate upward. |
| Feature | Frequentist meta-analysis | Bayesian meta-analysis |
|---|---|---|
| Interpretation | Confidence intervals and p-values, frequently misinterpreted by business teams. | Credible intervals and direct probabilities — e.g. "95% probability the true lift is above 2%." |
| Small study counts | DL/REML's τ² estimate gets noisy with few studies, and can even floor at zero — a falsely narrow, overconfident interval. | A prior on τ² keeps the posterior honestly wide when few studies are pooled, rather than pretending false precision. |
| Shrinkage | Also happens here — random-effects (DL/REML) shrinks noisy individual studies too, via the same precision-weighted logic; it's just rarely reported. | Same shrinkage mechanism, but surfaced naturally as part of the output (a posterior for every study), and its strength properly reflects τ²'s own uncertainty. |
| Prior knowledge | Treats every meta-analysis as starting from scratch — no formal way to fold in outside information. | Formally integrates historical benchmarks or industry priors to stabilise new/thin test results. |
| Flexibility | Nested nesting (by industry, market, campaign objective) is possible via mixed-effects models, but gets unwieldy fast. | Naturally handles multi-level hierarchical structure (tests nested by vertical, market, objective) as an extension of the same model. |
| 1. Story | Advertiser's business model, vertical (e-commerce / gaming), and where they are today — new to Snap, scaling an existing channel, or expanding into new markets. |
| 2. Goal | Pin the objective explicitly: install volume, ROAS, D7-retention-adjusted LTV, revenue. Common trap: solving the wrong objective because it wasn't confirmed up front. |
| 3. Solution | Name the actual Snap product mix: Smart Campaign Solutions (automated bidding), Dynamic Product Ads (e-commerce catalog), AR Lens / Sponsored Snappables (awareness), Story/Collection Ads (creative format). |
| 4. Measurement proof | Your wedge as a scientist — Conversion Lift design (holdout or add-on, per the question), MDE/duration, how you'd rule out the confounds above. |
| 5. Results | Report as % lift AND incremental ROAS / cost-per-incremental-outcome, echoing the register of real case studies (e.g. "20% ROAS lift, 50% lower CPA" — SHEIN; "+58% installs, +19% purchases, +12% revenue via Unified Attribution" — VOGACLOSET). |
| 6. Recommendation | What to scale next, and the threshold/condition that would change the recommendation. |
| CTR / CVR / ROAS by segment | SUM(clicks)*1.0/NULLIF(SUM(impressions),0) — always cast to float and guard the denominator with NULLIF, never raw integer division. |
| Week-over-week / period-over-period | LAG(metric) OVER (PARTITION BY campaign_id ORDER BY week) — don't self-join when a window function does it in one pass. |
| Top-N per advertiser/campaign | RANK() / ROW_NUMBER() OVER (PARTITION BY advertiser_id ORDER BY spend DESC). |
| ⚠️ LEFT JOIN + WHERE | A filter on the right table in WHERE silently turns a LEFT JOIN into an INNER JOIN — put the filter in the ON clause. |
| Incremental outcome | Treatment vs. control aggregates joined on test arm, then (treatment_outcome - control_outcome) / incremental_spend computed in the final SELECT — say this formula out loud if asked to write the lift query. |
| MMM (media mix modeling) | Regresses aggregate outcome (revenue/conversions) on aggregate spend by channel over time. Uses adstock (carryover — an impression's effect decays over following days/weeks, not instantly) and saturation curves (diminishing returns as spend in a channel rises). Privacy-resilient (no user-level tracking needed), but lagged and needs enough historical variation in spend to identify channel effects — collinear budgets (channels always moving together) make coefficients unstable. |
| Conversion Lift (incrementality) | User- or geo-level randomised holdout, platform-run. Gives a causal, granular answer for one campaign on a behavioural outcome (purchase, install, sign-up), but needs meaningful spend/inventory to be powered, and doesn't automatically generalise to other campaigns or time periods. |
| Brand Lift surveys | Same exposed-vs-control randomised design as Conversion Lift, but the outcome is a survey response from a matched exposed and control panel, not a logged conversion — measures aided/unaided ad recall, brand awareness, favourability, message association, purchase intent. Used for upper-funnel/awareness campaigns (AR Lens, video, Sponsored Snappables) where there's no conversion event yet to causally test on. Needs bigger reach and longer duration to power, since survey response rates are far lower than conversion rates, and typically runs through a third-party research/panel partner rather than pixel-based tracking. |
| MTA / Unified Attribution | Rules-based or algorithmic credit assignment across touchpoints (last-click, linear, data-driven). Granular and real-time, but breaks under privacy changes (iOS ATT, cookie deprecation) since it depends on user-level tracking, and it's correlational, not causal — it describes the path to conversion, not what would've happened without the ad. |
| Multi-study meta-analysis | Pool effect sizes across many advertiser-level lift tests (e.g. by vertical — gaming, e-commerce) to build a generalised elasticity / diminishing-returns curve. Method: hierarchical/mixed-effects model pooling studies, weighting by each test's power/precision, checking for effect heterogeneity before pooling rather than assuming one true effect. |
| Which to lead with | Conversion Lift is your credibility instrument for performance/lower-funnel spend. Brand Lift is the equivalent for awareness/upper-funnel spend — same logic, different outcome variable. MMM is your scaling instrument for budget allocation across many advertisers/channels at once. Frame it as "the outcome variable changes with the funnel stage," not as picking one tool. |
| "Drive scaled adoption" | The JD's core ask — a repeatable testing/learning-agenda framework advertisers self-serve into, not one-off bespoke analyses per advertiser. |
| Gap: client-facing pitch decks | Reframe honestly — influence experience is upward/cross-functional (Product, Eng, exec go/no-go), which transfers as "structuring insight for a skeptical, non-technical audience." Don't overclaim Sales-deck experience not actually held. |
| Gap: MMM / brand lift depth | Claim fluency in when to use it and its limits (a "partner" role needs this more than deep modeling chops), not hands-on MMM-building — be precise about which you have. |
| Leveraging real Meta experience | Speak from firsthand Meta Ads Monetisation DS experience — Conversion Lift mechanics, ghost ads, incrementality — translated into Snap's named products, not Meta's terminology (Advantage+ → Smart Campaign Solutions, Partnership Ads → creator/AR formats). |
| Fluency requirement | Mandarin fluency is a minimum qualification — be ready to confirm comfort operating bilingually with Sales/advertisers, not just as a nice-to-have. |
| Product | North star | Guardrails | Considerations |
|---|---|---|---|
| 🤖 Smart Campaign Solutions | Conversion volume / lift at target CPA | Realised cost per outcome vs. the manual baseline · overfitting to short-term signal | Manual delivery means a human sets fixed rules — a bid cap (max CPM/CPC/CPA per auction), budget/pacing, targeting — applied uniformly until someone changes them. Smart Campaign Solutions instead predicts, per individual auction, how likely that impression is to convert, and pays more or less accordingly to hit a target outcome — there's no fixed ceiling. That flexibility usually lowers cost per outcome, but not always (especially during the early learning phase, or if the optimisation event is misaligned with true value) — so the guardrail is checking realised cost-per-outcome under automation against what the same budget would have cost under the old manual rules, not assuming automation is cheaper by default. Also: automated bidding can behave like an adaptive/bandit system — it continuously re-weights delivery toward whatever impression/user/creative is currently predicted to convert best, based on real-time conversion signal, rather than holding a fixed rule for the whole run (the "learning phase" is its explore stage before it starts exploiting what's working). Don't run a fixed-design lift test with it uncontrolled — if it can "see" conversions in treatment but not a holdout control, it will progressively skew delivery toward easy converters, inflating the lift estimate with a selection effect rather than a real causal one. The fix is freezing targeting/bid strategy identically across test arms, not disabling the bandit behaviour itself. |
| 🎯 Conversion Lift | Incremental conversions / incremental ROAS | Test power (MDE) · budget/auction parity via ghost ads | Needs meaningful spend to be powered — small/mid advertisers may not qualify; that's exactly where MMM-style pooled learnings fill the gap. |
| 🛒 Dynamic Product Ads | ROAS · CPA | Catalog freshness · feed errors | E-commerce workhorse; pair with a Conversion Lift or add-on test to prove the catalog optimisation itself is incremental, not just well-targeted. |
| 🎬 Single Image/Video Ads & Story Ads | CTR · completion rate (video) · swipe-up rate | Creative fatigue · frequency | Single Image/Video is the base unit — one full-screen vertical Snap Ad. A Story Ad is a branded Discover tile opening a sequence of 1–20 of these, built for narrative/sequential storytelling rather than a single pitch — upper-to-mid funnel. |
| 🛍️ Collection Ads | Click-to-product-page rate · ROAS | Catalog freshness (same as Dynamic Product Ads) · thumbnail relevance | One hero video/image plus 2–4 tappable product thumbnails in a single card — a shoppable, direct-response format. Contrast with Story Ads: Story Ads tell a sequential story across multiple cards; Collection Ads put a shoppable product grid inside a single card. No native Snap marketplace or checkout. Each thumbnail carries its own advertiser-set URL, routing straight to that product's page — Website URL, a Deep Link URI into the advertiser's own app, or an App Store location. A separate fallback destination (same three options) is required for a swipe-up that lands outside any thumbnail. Snap owns the discovery/creative surface and measurement (Pixel, Conversions API, Conversion Lift); the actual browsing and purchase happen on the advertiser's own site or app once the user taps through — same pattern as Dynamic Product Ads. |
| 📡 Unified Attribution | Cross-channel attributed conversions | Attribution model choice (last-click vs. data-driven) · privacy/tracking degradation | Correlational, not causal — pair with Conversion Lift when the advertiser needs a causal claim, not just a path-to-conversion view. |
| ✨ AR Lens / Sponsored Snappables | Reach · engagement rate · brand lift | Completion/play rate · sentiment · Sponsored-label compliance | An in-app AR camera filter, not a wearable/Spectacles placement — appears in the Lens Carousel, the swipeable row a user scrolls through before taking a photo/video. When the carousel opens, Snap runs a second-price auction among eligible Lenses; the advertiser is billed only if the user swipes onto/engages with it, not on mere impression — a materially different cost model from CPM formats like Story/Collection Ads. Sponsored Snappables add an interactive mini-game on top of the AR effect. Two buy tiers: a full Lens Carousel takeover (exclusive, premium — roughly $50K+/day, into the hundreds of thousands for major events, a top-advertiser buy) vs. Lens Web Builder / Community Lenses with paid promotion, distributed through the standard auction at normal CPM pricing (~$5–15 CPM) — the accessible, scalable version. Every sponsored Lens must carry a visible "Sponsored" label. Usually the "add-on format" in an add-on test — the natural example when asked to design one live. |
| Vertical | Primary objective | Guardrails | The one thing to say |
|---|---|---|---|
| 🎮 Gaming (UA) | Installs → D7/D30 retention-adjusted LTV | Install fraud · low-quality/bot installs · CPI vs. LTV tradeoff | Raw install volume is a vanity metric — always pull the objective back to retention-adjusted value, not just CPI. |
| 🛍️ E-commerce | ROAS · incremental revenue | Return/refund rate · catalog data quality | Purchase-value skew (a few big-basket orders) means CLT/power reasoning matters — decompose into conversion rate × AOV before jumping to a driver analysis. |
| Incrementality | 增量效果 zēngliàng xiàoguǒ "We want to measure the incrementality of this campaign." — 我们想衡量这个广告活动的增量效果。(Wǒmen xiǎng héngliàng zhège guǎnggào huódòng de zēngliàng xiàoguǒ.) |
| Lift test | 增量提升测试 zēngliàng tíshēng cèshì "Let's run a lift test before we scale the budget." — 我们先做一个增量提升测试,再扩大预算。(Wǒmen xiān zuò yí gè zēngliàng tíshēng cèshì, zài kuòdà yùsuàn.) |
| Control group / holdout | 对照组 duìzhào zǔ "The control group didn't see any ads during the test." — 对照组在测试期间没有看到任何广告。(Duìzhào zǔ zài cèshì qījiān méiyǒu kàndào rènhé guǎnggào.) |
| Treatment group | 实验组 shíyàn zǔ "The treatment group saw the new ad format." — 实验组看到了新的广告形式。(Shíyàn zǔ kàndào le xīn de guǎnggào xíngshì.) |
| Conversion / conversion rate | 转化 / 转化率 zhuǎnhuà / zhuǎnhuàlǜ "Our conversion rate improved by 12% this month." — 我们这个月的转化率提升了百分之十二。(Wǒmen zhège yuè de zhuǎnhuàlǜ tíshēng le bǎifēnzhī shí'èr.) |
| Attribution | 归因 guīyīn "Which channel gets attribution for this sale?" — 这笔销售的归因是哪个渠道?(Zhè bǐ xiāoshòu de guīyīn shì nǎge qúdào?) |
| Causal inference | 因果推断 yīnguǒ tuīduàn "We used causal inference to rule out other explanations." — 我们用因果推断排除了其他解释。(Wǒmen yòng yīnguǒ tuīduàn páichúle qítā jiěshì.) |
| Statistical significance | 统计显著性 tǒngjì xiǎnzhùxìng "The result did not reach statistical significance." — 这个结果没有达到统计显著性。(Zhège jiéguǒ méiyǒu dádào tǒngjì xiǎnzhùxìng.) |
| Confidence interval | 置信区间 zhìxìn qūjiān "The confidence interval doesn't include zero." — 置信区间不包含零。(Zhìxìn qūjiān bù bāohán líng.) |
| A/B test / experiment | A/B 测试 / 实验 A/B cèshì / shíyàn "We're running an A/B test on the new creative." — 我们正在对新的广告素材做A/B测试。(Wǒmen zhèngzài duì xīn de guǎnggào sùcái zuò A/B cèshì.) |
| Media mix modeling (MMM) | 营销组合模型 yíngxiāo zǔhé móxíng "The MMM shows diminishing returns on this channel." — 营销组合模型显示这个渠道的回报正在递减。(Yíngxiāo zǔhé móxíng xiǎnshì zhège qúdào de huíbào zhèngzài dìjiǎn.) |
| Driver analysis | 驱动因素分析 qūdòng yīnsù fēnxī "We did a driver analysis to find what's moving ROAS." — 我们做了驱动因素分析,找出影响ROAS的因素。(Wǒmen zuòle qūdòng yīnsù fēnxī, zhǎochū yǐngxiǎng ROAS de yīnsù.) |
| ROAS (return on ad spend) | 广告支出回报率 guǎnggào zhīchū huíbàolǜ "Our ROAS improved after switching to Dynamic Product Ads." — 换成动态商品广告后,我们的广告支出回报率提高了。(Huànchéng dòngtài shāngpǐn guǎnggào hòu, wǒmen de guǎnggào zhīchū huíbàolǜ tígāo le.) |
| ROI | 投资回报率 tóuzī huíbàolǜ "The client wants to see a clear ROI before scaling." — 客户想在扩大投放前看到清晰的投资回报率。(Kèhù xiǎng zài kuòdà tóufàng qián kàndào qīngxī de tóuzī huíbàolǜ.) |
| CPA (cost per acquisition) | 获客成本 huòkè chéngběn "Our CPA dropped by 20% this quarter." — 我们这个季度的获客成本下降了百分之二十。(Wǒmen zhège jìdù de huòkè chéngběn xiàjiàng le bǎifēnzhī èrshí.) |
| CAC (customer acquisition cost) | 客户获取成本 kèhù huòqǔ chéngběn "CAC is rising faster than LTV." — 客户获取成本的增长速度快于用户生命周期价值。(Kèhù huòqǔ chéngběn de zēngzhǎng sùdù kuàiyú yònghù shēngmìng zhōuqī jiàzhí.) |
| CPM | 千次展示成本 qiāncì zhǎnshì chéngběn "CPMs are higher during the holiday season." — 假期期间千次展示成本更高。(Jiàqī qījiān qiāncì zhǎnshì chéngběn gèng gāo.) |
| CTR (click-through rate) | 点击率 diǎnjīlǜ "The new creative has a much higher CTR." — 新的广告素材点击率高很多。(Xīn de guǎnggào sùcái diǎnjīlǜ gāo hěn duō.) |
| LTV (lifetime value) | 用户生命周期价值 yònghù shēngmìng zhōuqī jiàzhí "We should optimise for LTV, not just installs." — 我们应该优化用户生命周期价值,而不只是安装量。(Wǒmen yīnggāi yōuhuà yònghù shēngmìng zhōuqī jiàzhí, ér bùzhǐ shì ānzhuāng liàng.) |
| Retention rate | 留存率 liúcúnlǜ "Retention rate is the real success metric for gaming." — 留存率才是游戏行业真正的成功指标。(Liúcúnlǜ cái shì yóuxì hángyè zhēnzhèng de chénggōng zhǐbiāo.) |
| KPI (key performance indicator) | 关键绩效指标 guānjiàn jìxiào zhǐbiāo "Let's align on the KPI before we start." — 我们开始之前先对齐关键绩效指标。(Wǒmen kāishǐ zhīqián xiān duìqí guānjiàn jìxiào zhǐbiāo.) |
| Target audience | 目标受众 mùbiāo shòuzhòng "Who is the target audience for this campaign?" — 这个广告活动的目标受众是谁?(Zhège guǎnggào huódòng de mùbiāo shòuzhòng shì shéi?) |
| Lookalike audience | 相似受众 xiāngsì shòuzhòng "We built a lookalike audience based on existing buyers." — 我们根据现有买家建立了相似受众。(Wǒmen gēnjù xiànyǒu mǎijiā jiànlìle xiāngsì shòuzhòng.) |
| Retargeting | 再营销 / 重定向 zài yíngxiāo / chóng dìngxiàng "Retargeting usually has a higher conversion rate." — 再营销通常有更高的转化率。(Zài yíngxiāo tōngcháng yǒu gèng gāo de zhuǎnhuàlǜ.) |
| Auction | 竞价 jìngjià "Bids are competing in a real-time auction." — 出价是在实时竞价中相互竞争的。(Chūjià shì zài shíshí jìngjià zhōng xiānghù jìngzhēng de.) |
| Bid | 出价 chūjià "We raised the bid to win more impressions." — 我们提高了出价,以获得更多曝光。(Wǒmen tígāole chūjià, yǐ huòdé gèng duō bàoguāng.) |
| Impression | 曝光 / 展示 bàoguāng / zhǎnshì "The campaign delivered ten million impressions." — 这个广告活动带来了一千万次曝光。(Zhège guǎnggào huódòng dàiláile yìqiān wàn cì bàoguāng.) |
| Budget pacing | 预算投放节奏 yùsuàn tóufàng jiézòu "Budget pacing was too fast in the first week." — 第一周的预算投放节奏太快了。(Dì yī zhōu de yùsuàn tóufàng jiézòu tài kuài le.) |
| Budget allocation | 预算分配 yùsuàn fēnpèi "How should we adjust budget allocation across channels?" — 我们应该如何调整各渠道的预算分配?(Wǒmen yīnggāi rúhé tiáozhěng gè qúdào de yùsuàn fēnpèi?) |
| Brand awareness | 品牌知名度 pǐnpái zhīmíngdù "This campaign's main goal is brand awareness." — 这个广告活动的主要目标是提升品牌知名度。(Zhège guǎnggào huódòng de zhǔyào mùbiāo shì tíshēng pǐnpái zhīmíngdù.) |
| Incremental sales / revenue | 增量销售 / 增量收入 zēngliàng xiāoshòu / zēngliàng shōurù "We proved the campaign drove incremental sales." — 我们证明了这个广告活动带来了增量销售。(Wǒmen zhèngmíngle zhège guǎnggào huódòng dàiláile zēngliàng xiāoshòu.) |
| Data-driven decision | 数据驱动决策 shùjù qūdòng juécè "We want every budget decision to be data-driven." — 我们希望每一个预算决策都是数据驱动的。(Wǒmen xīwàng měi yí gè yùsuàn juécè dōu shì shùjù qūdòng de.) |
| Stakeholder alignment | 利益相关方对齐 lìyì xiāngguānfāng duìqí "We need stakeholder alignment before launch." — 上线前,我们需要让各利益相关方对齐。(Shàngxiàn qián, wǒmen xūyào ràng gè lìyì xiāngguānfāng duìqí.) |
| Pilot test | 试点测试 shìdiǎn cèshì "Let's run a pilot test with one advertiser first." — 我们先和一个广告主做一个试点测试。(Wǒmen xiān hé yí gè guǎnggào zhǔ zuò yí gè shìdiǎn cèshì.) |
| Scale up | 规模化 / 扩大规模 guīmóhuà / kuòdà guīmó "If the pilot works, we'll scale up across the region." — 如果试点成功,我们将在整个区域扩大规模。(Rúguǒ shìdiǎn chénggōng, wǒmen jiāng zài zhěnggè qūyù kuòdà guīmó.) |
| Drive scaled adoption | 推动规模化采用 tuīdòng guīmóhuà cǎiyòng "My job is to drive scaled adoption of this measurement framework." — 我的工作是推动这个测量框架的规模化采用。(Wǒ de gōngzuò shì tuīdòng zhège cèliáng kuàngjià de guīmóhuà cǎiyòng.) |
| Case study | 案例研究 ànlì yánjiū "Let me walk you through a relevant case study." — 让我为您介绍一个相关的案例研究。(Ràng wǒ wèi nín jièshào yí gè xiāngguān de ànlì yánjiū.) |
| Go-to-market strategy | 市场进入策略 shìchǎng jìnrù cèlüè "We need a clear go-to-market strategy for this product." — 我们需要为这个产品制定清晰的市场进入策略。(Wǒmen xūyào wèi zhège chǎnpǐn zhìdìng qīngxī de shìchǎng jìnrù cèlüè.) |
| Cross-functional collaboration | 跨部门协作 kuà bùmén xiézuò "This role requires strong cross-functional collaboration." — 这个职位需要很强的跨部门协作能力。(Zhège zhíwèi xūyào hěn qiáng de kuà bùmén xiézuò nénglì.) |
| Increased by X% | 增长了百分之 X / 提升了百分之 X zēngzhǎng le bǎifēnzhī X / tíshēng le bǎifēnzhī X "Revenue increased by 20% this quarter." — 这个季度收入增长了百分之二十。(Zhège jìdù shōurù zēngzhǎng le bǎifēnzhī èrshí.) |
| Decreased by X% | 下降了百分之 X / 降低了百分之 X xiàjiàng le bǎifēnzhī X / jiàngdī le bǎifēnzhī X "CPA decreased by 15%." — 获客成本下降了百分之十五。(Huòkè chéngběn xiàjiàng le bǎifēnzhī shíwǔ.) |
| An X% lift / uplift | 百分之 X 的提升 / 百分之 X 的增量 bǎifēnzhī X de tíshēng / bǎifēnzhī X de zēngliàng "The test showed a 12% lift in conversions." — 测试显示转化率有百分之十二的提升。(Cèshì xiǎnshì zhuǎnhuàlǜ yǒu bǎifēnzhī shí'èr de tíshēng.) |
| Percentage point (pp) vs. percent | 百分点 vs. 百分比 bǎifēndiǎn vs. bǎifēnbǐ "The conversion rate rose 2 percentage points, from 10% to 12%." — 转化率提升了2个百分点,从百分之十上升到百分之十二。(Zhuǎnhuàlǜ tíshēng le liǎng gè bǎifēndiǎn, cóng bǎifēnzhī shí shàngshēng dào bǎifēnzhī shí'èr.) |
| Doubled (increased by 100%) | 增长了一倍 / 翻了一倍 zēngzhǎng le yí bèi / fān le yí bèi "Installs doubled after the format change." — 换了广告形式后,安装量增长了一倍。(Huànle guǎnggào xíngshì hòu, ānzhuāng liàng zēngzhǎng le yí bèi.) |
| Is 3× the original (new total) | 是原来的三倍 shì yuánlái de sān bèi "Revenue is now three times what it was last year." — 现在的收入是去年的三倍。(Xiànzài de shōurù shì qùnián de sān bèi.) |
| Year-over-year (YoY) | 同比 tóngbǐ "ROAS is up 30% year-over-year." — ROAS同比增长了百分之三十。(ROAS tóngbǐ zēngzhǎng le bǎifēnzhī sānshí.) |
| Month-over-month (MoM) | 环比 huánbǐ "Spend is flat month-over-month." — 支出环比持平。(Zhīchū huánbǐ chípíng.) |
| Compared to (baseline) | 与...相比 yǔ...xiāngbǐ "Compared to the control group, treatment converted 8% more." — 与对照组相比,实验组的转化率高出百分之八。(Yǔ duìzhào zǔ xiāngbǐ, shíyàn zǔ de zhuǎnhuàlǜ gāochū bǎifēnzhī bā.) |
| From X to Y | 从 X 到 Y cóng X dào Y "CTR went from 1.2% to 1.8%." — 点击率从百分之一点二上升到百分之一点八。(Diǎnjīlǜ cóng bǎifēnzhī yī diǎn èr shàngshēng dào bǎifēnzhī yī diǎn bā.) |
| Roughly / approximately X% | 大约百分之 X / 大概百分之 X dàyuē bǎifēnzhī X / dàgài bǎifēnzhī X "The lift was roughly 10%." — 提升幅度大约是百分之十。(Tíshēng fúdù dàyuē shì bǎifēnzhī shí.) |
| More than / over X% | 超过百分之 X chāoguò bǎifēnzhī X "ROAS improved by more than 25%." — ROAS提升了超过百分之二十五。(ROAS tíshēng le chāoguò bǎifēnzhī èrshíwǔ.) |
| Nearly / almost X% | 接近百分之 X jiējìn bǎifēnzhī X "We're nearly at a 90% confidence level." — 我们接近百分之九十的置信水平。(Wǒmen jiējìn bǎifēnzhī jiǔshí de zhìxìn shuǐpíng.) |
| Statistically significant increase | 具有统计显著性的增长 jùyǒu tǒngjì xiǎnzhùxìng de zēngzhǎng "This is a statistically significant increase, not noise." — 这是一个具有统计显著性的增长,不是噪音。(Zhè shì yí gè jùyǒu tǒngjì xiǎnzhùxìng de zēngzhǎng, bùshì zàoyīn.) |
| "Let me clarify the objective first." | 我先明确一下目标。 Wǒ xiān míngquè yīxià mùbiāo. |
| "The results show a statistically significant lift." | 结果显示有统计显著的提升。 Jiéguǒ xiǎnshì yǒu tǒngjì xiǎnzhù de tíshēng. |
| "I'd recommend we scale this test." | 我建议我们扩大这个测试的规模。 Wǒ jiànyì wǒmen kuòdà zhège cèshì de guīmó. |
| "We need to control for confounding factors." | 我们需要控制混杂因素。 Wǒmen xūyào kòngzhì hùnzá yīnsù. |
| "I have experience in ads measurement." | 我在广告效果测量方面有经验。 Wǒ zài guǎnggào xiàoguǒ cèliáng fāngmiàn yǒu jīngyàn. |
| "Thank you for the opportunity." | 谢谢您给我这个机会。 Xièxiè nín gěi wǒ zhège jīhuì. |