{ "range": "1 – 23 June 2026 (sample)", "updated": "sample data — replace with live /api/report", "portfolio": { "spend": "$53.1k", "mer": "3.4", "revenue": "$181k" }, "brands": [ { "id":"nwl","name":"NatureWell","code":"NWL","color":"#7c5cff","tag":"DTC · Meta + Google + TikTok", "pace":{"forecast":"$11.5k","target":"$11.5k","note":"on target"}, "kpis":[ {"lab":"ROAS","val":"1.4","hero":true,"delta":-4,"ctx":"Consistently >1 despite OOS"}, {"lab":"Spend","val":"$5,440","delta":12,"ctx":"DTC website, MTD"}, {"lab":"Revenue","val":"$7,531","delta":8,"ctx":"236 transactions"}, {"lab":"CVR","val":"2.1%","delta":3,"ctx":"sessions → orders"}, {"lab":"AOV","val":"$31.9","delta":-2,"ctx":"CPA $23.05"}], "trendLabels":[["W23","(Jun 1–7)"],["W24","(Jun 8–14)"],["W25","(Jun 15–21)"],["W26","(Jun 22–28)"]], "trendRoas":[1.5,1.46,1.41,1.4],"trendSpend":[1200,1530,2410,5440], "channels":[ {"nm":"Meta","spend":43206,"rev":0,"roas":null,"color":"#7c5cff"}, {"nm":"TikTok","spend":17472,"rev":0,"roas":null,"color":"#22d3ee"}, {"nm":"Google","spend":2351,"rev":2964,"roas":1.26,"color":"#ff7ac6"}], "notes":[ {"type":"win","h":"Win","t":"“What's Your Stack” scaling cleanly — Meta $0.27–0.28 CPL, no fatigue.","who":"Meta lead"}, {"type":"risk","h":"Risk","t":"Retinol Promo under target at 0.9 ROAS. OOS capping DTC ceiling.","who":"Account"}, {"type":"action","h":"Action","t":"Walmart Lip launch — $33k, Jun 29 → Jul 19.","who":"Planning"}]}, { "id":"usrx","name":"Urban Skin Rx","code":"USRx","color":"#22d3ee","tag":"DTC + Retail · Meta + Google + Amazon", "pace":{"forecast":"$43.2k","target":"$55k","note":"pacing under target"}, "kpis":[ {"lab":"ROAS","val":"2.7","hero":true,"delta":-11,"ctx":"DTC website blended"}, {"lab":"Spend","val":"$18,836","delta":9,"ctx":"DTC website, MTD"}, {"lab":"Revenue","val":"$49,900","delta":-6,"ctx":"809 transactions"}, {"lab":"CVR","val":"3.4%","delta":-5,"ctx":"post-Bestie dip"}, {"lab":"AOV","val":"$61.7","delta":2,"ctx":"MER 3.6 overall"}], "trendLabels":[["W23","(Jun 1–7)"],["W24","(Jun 8–14)"],["W25","(Jun 15–21)"],["W26","(Jun 22–28)"]], "trendRoas":[4.33,3.82,3.1,2.7],"trendSpend":[9090,13400,16200,18836], "channels":[ {"nm":"Google Shop","spend":9090,"rev":39388,"roas":4.33,"color":"#22d3ee"}, {"nm":"Secondary","spend":6299,"rev":24054,"roas":3.82,"color":"#7c5cff"}, {"nm":"Retail","spend":670,"rev":0,"roas":null,"color":"#ff7ac6"}], "notes":[ {"type":"risk","h":"Risk","t":"ROI dropped post-Bestie promo — OOS. SPF still out. Paused Even Tone Super Glow Serum.","who":"Account"}, {"type":"win","h":"Win","t":"New Shopping campaign on in-stock bundles to protect ROAS.","who":"Google lead"}, {"type":"action","h":"Open","t":"Any SPF back in stock? Added Double Cleanse + Moisturize Kit creative.","who":"Adfix → client"}]}, { "id":"idl","name":"Indie Lee","code":"IDL","color":"#ff7ac6","tag":"DTC · Meta + Google", "pace":{"forecast":"$17.4k","target":"$20k","note":"pacing under target"}, "kpis":[ {"lab":"ROAS","val":"2.9","hero":true,"delta":5,"ctx":"blended Meta + Google"}, {"lab":"Spend","val":"$13,496","delta":7,"ctx":"MTD, MER 4.28"}, {"lab":"Revenue","val":"$33,737","delta":-12,"ctx":"439 sales"}, {"lab":"CVR","val":"2.8%","delta":-3,"ctx":"Google -21% wk"}, {"lab":"AOV","val":"$76.8","delta":1,"ctx":"MER 4.28"}], "trendLabels":[["W23","(Jun 1–7)"],["W24","(Jun 8–14)"],["W25","(Jun 15–21)"],["W26","(Jun 22–28)"]], "trendRoas":[3.6,3.34,3.1,2.9],"trendSpend":[3100,6536,10200,13496], "channels":[ {"nm":"Google","spend":6536,"rev":21842,"roas":3.34,"color":"#ff7ac6"}, {"nm":"Meta","spend":6960,"rev":11895,"roas":1.72,"color":"#7c5cff"}], "notes":[ {"type":"win","h":"Win","t":"Botanicals back in stock — increasing budget. Barrier Boost cream 2.8+ ROAS.","who":"Meta lead"}, {"type":"risk","h":"Watch","t":"Google rev -21%, ROAS -15.5%. Cleansers & Toners still volume driver; re-optimized bidding.","who":"Google lead"}, {"type":"action","h":"Note","t":"Last week's metrics expected to improve (reporting lag).","who":"Account"}]} ] }