Weekly Meta Ads and Shopify ROAS brief in Slack

By General Input

Every Monday at 9am, get a Slack brief that pairs last week's Meta Ads spend with real Shopify revenue and calls out where to reallocate budget.

Integrations

  • Meta Ads
  • Shopify
  • Slack Bot

Type

Agentic Task

Categories

  • Marketing

Every Monday at 9am in my local time zone, build me a weekly ecommerce ROAS brief that posts to Slack. This is an agent workflow: reason over the numbers and write the message, don't just dump a table.

Step 1: Pull last week's Meta Ads performance. Use Meta Ads List Campaigns to get every active campaign in my ad account. Then use Meta Ads Get Insights scoped to campaign level for the previous calendar week (Monday through Sunday), returning at minimum: campaign_id, campaign_name, spend, impressions, clicks, purchases, purchase value, and Meta's reported purchase ROAS. Also pull the same insights for the week before that, so I can compute week-over-week deltas.

Step 2: Pull last week's real Shopify revenue. Use Shopify List Orders filtered by financial_status = paid and created_at within the same last-week date range. Sum total_price across those orders (in the store's currency) to get weekly Shopify revenue. Do the same for the prior week so we have a comparison number.

Step 3: Compute the headline numbers. Weekly Meta spend, weekly Shopify paid revenue, and blended ROAS (Shopify revenue divided by Meta spend). Compute the week-over-week percentage change on each of those three.

Step 4: Rank campaigns to identify the top 3 scalers and bottom 3 underperformers, using Meta's reported purchase ROAS from the insights payload as the ranking metric. Exclude any campaign that spent less than a configurable floor (default $200) in the week, because low-spend ROAS is too noisy to trust. If fewer than 3 campaigns clear the floor on either end, show whatever qualifies and note it.

Step 5: Send a Slack message via Slack Bot Send a Message to a channel I pick during setup. Structure the message as: (a) a headline block with weekly spend, Shopify revenue, blended ROAS, and week-over-week deltas as up/down arrows with percentages; (b) a Scale these list of the top 3 campaigns with a one-line reason per campaign, e.g. strong ROAS, ROAS improving week over week, high volume at healthy return; (c) a Review these list of the bottom 3 campaigns with a one-line suggested action per campaign chosen from pause, cut budget, or refresh creative, based on whether the issue is bad ROAS at scale, a decline week over week, or spend with zero attributed Shopify revenue.

Keep the tone crisp and executive. This is meant to be skimmed on a Monday morning. Format numbers with currency symbols and one decimal place for ROAS. Use Slack mrkdwn (bold headings, bullet lists, no giant tables).

Configurable inputs I want to be able to change without editing the workflow: the Slack channel to post to, the send time and day, the minimum weekly spend floor (default $200), the ad account ID, and the Shopify store domain.

Related prompts

Explore more prompts
A brand asset library your marketing team actually searchesTurn Mailjet email clicks into ranked HubSpot follow-upsClean out the Looker dashboards and Looks nobody opensLiveKit live operations console for room moderationWake up dormant Keap leads with a researched reasonLiveChat coverage board for planning next week's shiftsPhone routing control panel for LiveKit voice agentsLinkedIn Ads budget pacing dashboard for every client accountGive your team Looker numbers without buying more seatsPause marketing emails to escalated customers, then restore them