Agency Overview
| Brand | Ad Spend | Total Sales | MER | ROAS | CPA | Status | Last Check | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| No brands yet. Create brands to see the overview. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
All ad accounts and integrations across your brands
| Brand | Platform | Account | Status | Last Checked | Actions |
|---|---|---|---|---|---|
| Loading... | |||||
Brands
Events & Anomalies
Revenue spikes, traffic anomalies, spend discrepancies, and CVR shifts — detected automatically and attributed to source
Command Center
Period Comparisons
vs prior snapshotsPlatform Performance
Live Orders
Global Orders
Coming SoonReal-time global order map
Visualize orders across geographies
AI Insights
Powered by ClaudeIntegrations
Connect your ad platforms and tools to start monitoring KPIs.
Amazon Bridge
Deep-link ads directly to the Amazon app — track purchases via Attribution API and earn Brand Referral Bonus.
Amazon Ads Account
Connect to automatically create Attribution tags on new bridge links and sync daily purchase reports from Amazon.
Default Attribution Tag — fallback for links without their own auto-generated tag
Each bridge link gets its own tag automatically. This tag is only used as a fallback if a link has no tag yet.
How it works: When you connect your Amazon Ads account, Sentinel calls Amazon's official Attribution API to auto-create a unique tracking tag for each bridge link. These tags append ?maas=...&ref_=aa_maas&tag=maas to your product URL, which Amazon uses to credit purchases back to your ads and pay the ~10% Brand Referral Bonus. This uses Amazon's own Attribution program — fully within ToS. Requires Amazon Brand Registry enrollment.
Custom Bridge Domain
Use a branded subdomain so links look like go.yourbrand.com — SSL is provisioned automatically via Railway
Add these 2 DNS records at your domain registrar:
| Type | Name | Value |
|---|---|---|
| CNAME | go | — |
| TXT | — | — |
Record 2 is required for Railway to verify domain ownership and issue your SSL certificate. Set both as DNS-only (not proxied).
Bridge Links
Each link opens the Amazon app on mobile and appends your Attribution tag automatically
Clicks open the Amazon app on mobile, Amazon.com on desktop.
Clicks go to your landing page. We'll generate a tagged Amazon deep-link URL to put on your "Buy on Amazon" button.
Warranty / Registration Sheet Sync
Connect a Google Sheet of warranty or product registration form submissions — new rows are automatically sent to Meta via CAPI as Purchase events
Bridge Performance
CAPI Data Quality
Meta Custom Audience Sync
Auto-upload customer emails for lookalike & exclusion audiences
Manual / Legacy — SP-API & CSV Import
Amazon Seller Account (SP-API)
Checking connection...
Amazon Orders
Drag & drop your order report, or click to browse
Accepts .csv, .tsv, .txt from Amazon Seller Central
How to download your order report from Seller Central
- Go to Reports → Fulfillment in Seller Central, or open the link above
- Select Orders → All Orders and set your date range
- Click Request .txt Download, wait for it to generate, then download
- Drag and drop the file here — Sentinel handles the rest
How Amazon Bridge Works
Create a bridge link
Paste your Amazon product URL — Sentinel extracts the ASIN and creates a unique redirect
Use as your ad destination
Set the bridge URL as your Meta/Google/TikTok ad landing page — it captures the click ID automatically
Opens the Amazon app on mobile
Instead of a browser, the bridge opens the Amazon app directly — converting at a significantly higher rate from Meta ads
Amazon confirms purchases + BRB credit
Attribution API syncs daily purchase data directly from Amazon. You earn ~10% Brand Referral Bonus on qualifying external-traffic sales.
Alert Configurations
Alert Timeline
Every check run — alerts, anomalies, AI recommendations
| No history yet |
Kill Rules Log
Ads that triggered automated kill criteria — review and take action
AI Creatives
Custom Range
Click-Based
View-Through (VTA)
Hover a model to see details
Compare to Custom Range
| Campaign | Ad Spend | ROAS (Blended Paid) | Purch. (Blended Paid) | Rev. (Blended Paid) | CPA (Blended Paid) | Impr. | Clicks | CTR | Purchases (Meta) | ROAS (Meta) | CPA (Meta) | Conv. Value (Meta) | AOV | Page CVR | NC Purch. | NCCPA | New Purch. | Hist. Purch. | LTV Rev. | Avg LTV | LTV ROAS | LTV Cust. | Leads | CPL | Amazon Purch. | Amazon Rev. | Amazon ROAS | DPV | ATC | ||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Loading campaigns... | |||||||||||||||||||||||||||||||||
Channel Attribution
Live Orders
Refreshes every 30s| Order | Customer | Amount | Source | Campaign | Method | Confidence | Type | Date |
|---|
| Customer | LTV | Orders | AOV | Source | First Order | Last Order |
|---|
Attribution Settings
Attribution window and model are controlled via the dropdowns in the top bar above.
Off = Cash basis (revenue counted on order date). On = Accrual basis (revenue counted on ad click date).
Sentinel Tracking Pixel
Pixel health based on received events:
Check if the pixel is installed on a specific page:
Install via Shopify Admin for reliable checkout event tracking. Works with all themes and the new checkout.
- Go to Shopify Admin → Settings → Customer Events
- Click Add custom pixel
- Name it Sentinel
- Paste the code (use button above to copy)
- Set permission to Not required
- Click Save → Connect
You installed the Customer Events pixel manually (no Shopify OAuth connection). Add this second snippet to theme.liquid so Sentinel can capture paid clicks on landing pages — the same coverage the auto-install provides.
- Shopify Admin → Online Store → Themes → Edit code
- Open Layout → theme.liquid
- Paste the snippet immediately before
</body> - Click Save
ScriptTag auto-installed via Shopify OAuth
Landing page tracking is already active on every storefront page. The theme script is not needed — no extra steps required.
For brands using Guesty — install in the booking engine's Custom Code Snippet.
- Go to Guesty → Distribution → Booking Engine → Edit
- Open General Settings (Advanced section)
- Enable Custom code snippet
- Paste the code (use button above to copy)
- Save
Select platform for install steps:
- In Google Tag Manager, click New Tag → Custom HTML
- Paste the snippet below into the HTML field
- Set the trigger to All Pages
- Click Save, then Submit → Publish
- Open your Webflow project → Site Settings → Custom Code
- Paste the snippet into the Head Code field
- Click Save Changes, then republish the site
- Install the free WPCode plugin (or "Insert Headers and Footers")
- Go to WPCode → Header & Footer → Scripts in Header
- Paste the snippet and click Save Changes
Alternative: paste directly into your theme's header.php before </head>.
- Go to Settings → Advanced → Code Injection
- Paste the snippet into the Header field
- Click Save
Note: Code Injection is available on Business plan and above.
- Open Site Settings → General → Custom Code
- Paste the snippet under End of <head> tag
- Click Save and republish
- Find your site's global layout or template file (usually
layout.html,base.html, or similar) - Paste the snippet anywhere inside the
<head>tag - If your CMS has a "Custom Code" or "Head injection" field, paste it there
Loading snippet...
Step 2 — Add UTMs to your ad destination URLs:
Leads are tracked automatically. When a visitor submits any form containing an email field, Sentinel detects the submission and records the lead — no extra code needed.
Step 3 — Track purchases (custom checkout only)
Shopify & Guesty track purchases automatically — skip this step.
For custom checkouts (Stripe, etc.), add one line to your order confirmation page:
<script> // revenue = order total, email = customer email (links purchase to the ad click) window.Sentinel.trackPurchase(149.00, 'customer@example.com'); </script>
The email is optional but strongly recommended — it's the most reliable signal for matching the purchase back to the original ad click. Revenue can be a dynamic value from your backend.
Works with standard HTML forms, AJAX/fetch submissions, and dynamically loaded forms (React, popups, etc.). If you add a custom tracking domain later, just swap the domain in the snippet's src URL.
Tracking Domain
ITP BypassServe the pixel from a branded subdomain to bypass Safari ITP and avoid ad-blocker lists. Two tiers available.
Your brand gets an auto-assigned subdomain. Zero setup required for clients.
WILDCARD_TRACKING_DOMAIN in Railway variables to enable (e.g. track.roirockstars.com).
Advanced: Client's Own Domain (True First-Party ITP Bypass)
Client adds 2 DNS records on their own domain (e.g. t.brandname.com). Cookies are set on the client's eTLD+1 — strongest ITP bypass. SSL provisioned automatically by Railway.
Client DNS Setup Instructions
Client adds these 2 records in their DNS provider (Cloudflare, Namecheap, etc.):
SSL is provisioned automatically by Railway once both records are added.
Sync Status
Server-Side Tracking (CAPI)
Send purchase events server-side to Meta and Google for higher match rates, bypassing iOS 14.5 restrictions.
Meta Conversion API
Use "Amazon only" if Shopify purchases are already sent by your native Shopify pixel — avoids duplicate events.
Google Enhanced Conversions
Amazon Attribution
Append your Amazon Attribution tag to bridge link redirects. Enables the Brand Referral Bonus (~10% back on qualifying sales).
Conversion Event Log
Enable CAPI to see server-side events here.
Incrementality has moved to its own page.
Incrementality Intelligence
Holdout-based measurement: see which campaigns drive real incremental revenue vs. claiming credit for organic conversions
Blended MER & Efficiency
Total revenue ÷ total ad spend across all channels (deduplicated daily snapshots)
Holdout Test Configuration
A holdout group sees no retargeting ads — their CVR is the organic baseline. The lift over baseline = incremental ROAS.
Incrementality Results
Exposed vs. holdout conversion rate comparison with statistical significance
Campaign Incrementality Intelligence
Per-campaign holdout analysis: see which campaigns truly drive incremental conversions vs. claiming credit for organic purchases
Traffic Spikes & TV Lift
Hours where traffic exceeded 2× the median baseline — useful for detecting TV ad airings, viral moments, or PR hits
Lifetime Value
Creator Attribution
Track influencer & creator performance with UTM redirect links
Creators
Revenue attributed via pixel + UTM tracking
Add Creator
Creator Links
Create Tracking Link
Pixel Health
Pixel not set up yet
Follow these 3 steps to start tracking visitors and attributing ad spend.
Configure your pixel domain
Go to Attribution → Settings to generate your pixel ID and custom tracking domain.
Copy & install the snippet
Paste the generated snippet into the <head> of every page on your site (or use the Shopify app block).
Send a test event
Visit your site once, then come back and click Send Test Event above to verify the pixel is working.
Pixel Snippet
UTM Setup Instructions
Add UTM parameters to your ad URLs so every click is attributed to the right ad. Select your ad platform:
In Meta Ads Manager → Ad level → URL Parameters field, paste:
Tip: set at campaign level so all new ads inherit automatically.
In Google Ads → Campaign/Ad Group → Final URL suffix field, paste:
Paste into "Final URL suffix" at campaign level (not the Tracking template).
In TikTok Ads Manager → Ad level → URL Parameters field, paste:
TikTok uses double-underscore macros. Set at ad group level for consistency.
For brands that run lead generation (contact forms, booking applications, sign-ups) instead of ecommerce. The same pixel snippet works on any site — no Shopify or revenue platform connection required.
Step 1 — Install the Pixel
Paste the standard pixel snippet (above) into the <head> of every page on your site. The pixel will automatically capture UTM parameters and click IDs when visitors arrive from ads.
Step 2 — That's It!
Leads are tracked automatically. When a visitor submits any form containing an email field, Sentinel detects the submission and records the lead — no extra code needed.
The pixel automatically intercepts form submissions (both standard HTML and AJAX/JavaScript), extracts the email, and fires a lead event. Works with React forms, popup modals, multi-step funnels, and dynamically loaded forms. Deduplicates automatically so repeat submissions don't double-count.
Manual override: window.Sentinel.trackLead(email)
If automatic detection doesn't work for your form (e.g. no email field, custom AJAX handler), you can manually fire a lead event:
// Call this anywhere after the pixel loads
window.Sentinel.trackLead('visitor@example.com');
Step 3 — Add UTMs to Your Ad Links
Use these parameters in the URL Parameters field of your Meta (or TikTok/Google) ads so each lead is attributed back to the campaign and ad that drove it.
What You'll See
Lead counts and Cost Per Lead (CPL) will appear in the Attribution table (enable the Leads / Cost Per Lead columns), the Command Center metric picker, and the Agency Overview column selector. No purchase or revenue data is required.
Post-Purchase Survey Triple Whale-style
Ask customers how they found you right after checkout
0
Total Responses
Self-reported attribution from customers on your order confirmation page.
Thank-You Page Snippet
Add this snippet to your Shopify store:
Shopify Admin → Settings → Checkout → scroll to "Additional scripts"
The widget appears 1.5s after the customer lands on the thank-you page and auto-dismisses after submission. Responses are stored once per order.
Recent Conversion Events
| Platform | Event | Status | Response | Time |
|---|---|---|---|---|
| Loading events... | ||||
Budget Optimizer
| Campaign | Platform | Current Spend | Recommended | Change | Reason |
|---|---|---|---|---|---|
|
Click "Optimize Budget" to get AI-powered budget recommendations Analyzes your campaign performance and suggests reallocations | |||||
Competitor Intelligence
Search any brand or niche. We show their top-performing image ads.
Pick a brand to spy on
Search any brand or keyword. We'll show their top-performing image ads.
Swipe File
Your saved ad inspiration collection. Save ads from Competitor Intel or your generated creatives.
Your swipe file is empty
Save ads from Competitor Intel by clicking the bookmark icon on any ad card.
Revenue Forecast
Set monthly targets and track your year-to-date progress
Revenue to Goal
—
to goal
Spend to Goal
—
to goal
AI Projection
—
projected year-end
Click "AI Projection" to generate
an end-of-year forecast
Cumulative Revenue vs Target
Monthly Breakdown
Click any target to edit · ROAS auto-computed
Email Intelligence
Klaviyo performance dashboard
Connect Klaviyo
Enter your Klaviyo Private API Key to unlock email intelligence. Find it in Klaviyo → Settings → API Keys.
Health Score
Email Revenue
—
RPE
—
Revenue/email sent
Subscribers
—
Total list size
Open Rate
—
Revenue Leak
—
/month estimated
Flow Coverage
Key automated flows
List Health
All Flows
Recent Campaigns
Bulk Upload
Upload up to 100 images or videos and launch them as Meta ads
Setup
Vars: {filename} {campaign} {date}
Vars: {filename} {campaign} {date}
Meta AI may adjust your creative. Toggle each enhancement individually.
Click or drag files here
JPG, PNG, GIF, MP4, MOV · Up to 100 files
Apply to All Creatives
Recent Sessions
Configure setup and upload creatives to get started
Edit Creative
Visual URL shown on ad (e.g. "yoursite.com")
Create Ad Set
Automation Rules
Automatically pause or adjust budgets when KPI thresholds are breached
Loading rules…
Ad Queue
Channel Mappings
Map Slack channels to Meta ad accounts for automatic video ingestion
Video Queue
Review transcribed videos, edit ad copy, then create ad sets in Meta
Daily Brief
Morning strategy analysis with executable recommendations
Loading briefs...
No conversations yet
Ad Agent
Start a conversation to create campaigns, analyze performance, or manage your ads with natural language.
Action History
72-hour outcome tracking for executed action plans. Positive outcomes are auto-saved to the Knowledge Base.
| Plan | Verdict (72h) | ROAS Δ | CPA Δ | Reason | Date |
|---|---|---|---|---|---|
| Loading… | |||||
Knowledge Base
SOPs, playbooks, winning patterns, and past action outcomes — used by the Ad Agent for smarter decisions.
Search Results