# Weekly Meta Ads and Shopify ROAS brief in Slack

> 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.

- Workflow type: agent
- Services: Meta Ads, Shopify, Slack Bot
- Categories: Marketing
- Published: 2026-07-11

## What it does

- Pulls last week's Meta Ads spend and campaign performance across your ad account.
- Joins that spend to real Shopify revenue from paid orders in the same week, so you trust the number.
- Sends a Slack message with weekly spend, revenue, blended ROAS, and the week-over-week change.
- Names a top 3 to scale and a bottom 3 to review, each with a one-line reason or suggested action.

## What you'll need

- A Meta Ads account with reporting access to the ad account you want reported on.
- A Shopify store where paid orders are recorded.
- A Slack workspace and a channel where the weekly brief should post.

## Prompt

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.

## How to customize

- Change the send time or day of the week, or add a second cadence like a mid-week check.
- Pick the Slack channel (or a DM) the brief posts to, and who gets @-mentioned.
- Adjust the minimum weekly spend a campaign needs before it can appear on the scale or review list (default $200).

## FAQ

### Meta and Shopify never agree on revenue. Which one does this trust?

Shopify. Real paid orders in the same week are the ground truth for revenue and blended ROAS. Meta's own reported purchase ROAS is only used to rank which campaigns to scale and which to review.

### Can I run this daily instead of weekly?

Yes. Ask for a daily or bi-weekly cadence and the date range and comparison window shift to match. Weekly is the default because ad spend is usually noisy day to day.

### Why is there a minimum spend floor?

Low-spend campaigns produce wildly high or wildly low ROAS that swings on a single order. The floor keeps those campaigns out of the scale and review lists so you focus on real signal.

### What if a campaign spent money but drove zero Shopify orders?

It shows up in the review list flagged as zero attributed revenue, so you can decide whether to pause it, cut budget, or refresh the creative.

### Does this work with more than one Shopify store or Meta Ads account?

The default template joins one Meta Ads account to one Shopify store. If you run multiple stores or accounts, you can duplicate the workflow or ask us to combine them into a single brief.

Use this prompt in General Input: https://www.generalinput.com/prompts/weekly-meta-ads-and-shopify-roas-brief-in-slack