Help
Concept docs for operators new to BHmetrics. Also see Automation log for live audit trail.
Guardrails
Every brand has guardrails (Settings → Brand). They limit what automated rules can do: • Daily spend cap %: max % budget can scale up per day. Default 20%. • Max ad-set scale %: per-rule cap. Default 25%. • Max pause % per 24h: floor on how much spend can be paused. Default 30%. • Approval threshold: dollar amount above which actions need human approval. Default $500. • Business hours: rules run anytime; out-of-hours rules require approval. • Automation freeze: kill switch. When a rule fires: 1. BHmetrics evaluates conditions (WHEN) 2. For each action (THEN), checks against guardrails 3. Either applies, blocks, or escalates to "needs approval" 4. Every step is logged to the Automation log (immutable)
Attribution models
5 live models on /dashboard/attribution: • Last click — credit goes to final touchpoint. Most platforms default to this. • First click — credit to the first touch. Useful for prospecting attribution. • Linear — split equally across all touchpoints in the journey. • Time decay — recent touches weight more. 7-day half-life by default. • Markov chain — removal-effect: each channel's credit = how much conversion probability drops if you remove it. Mathematically rigorous. • Shapley value — game-theoretic fair attribution via Monte Carlo permutation sampling. MMM (Marketing Mix Model) and Incrementality activate once you have ≥4 weeks of clean data.
EMQ — Event Match Quality
EMQ is Meta's score for how well CAPI events match user identity. Scale 0-10. Low EMQ (≤4): only client-side pixel data, no PII match. Most pixel-only setups. Mid EMQ (5-7): some hashed PII (email or phone). Decent. High EMQ (8+): hashed email + phone + IP + external_id + fbp/fbc. BHmetrics targets this. Why it matters: high EMQ means Meta's algorithm gets clearer feedback on which conversions came from its ads, which directly improves campaign optimization. BHmetrics's hybrid tracking loop captures click IDs (fbclid/gclid/etc.) at landing, joins them to your Shopify order at conversion, and dispatches a server-side event with all available identifiers hashed.
Rule lifecycle
Every rule moves through 4 states: • Draft — saved but not running. • Shadow — evaluator runs every hour, logs "would_apply" to Automation log, doesn't actually mutate platforms. Use this to verify the rule fires when expected before going live. • Live — actions execute (within guardrails). Operators get email/Slack on each fire. • Paused — temporarily disabled. Toggle from the Rules page. Recommended workflow: build rule → Shadow for ≥3 days → review the would-fires in the audit log → if accurate, promote to Live.
Pixel installation (when you have a domain)
1. Settings → Pixel 2. Copy the snippet (one line, ~50KB gzipped) 3. Paste into your Shopify theme.liquid before </head> 4. Test by visiting your site with ?fbclid=test → check /dashboard/connections "Recent dispatches" within 30 sec 5. Pixel captures click IDs from any paid traffic, persists 1-year via first-party cookie, fires page_view + view_content + add_to_cart automatically
Stuck? Email [email protected] — a real person reads every message during private beta.