Two real reports, 19 days apart

Same product. Same $20 a day. $951 more revenue.

This is not a mock-up. These are two optimisation reports from the same Shopify store and the same campaign, covering two consecutive 19-day periods. One thing happened in between: the merchant applied the action plan AdPilot wrote in the first report. Flip between the screenshots and read the numbers yourself.

Campaign
Everyday Essentials
Sector
Fashion & Apparel
Budget
$20/day
Periods compared
19 + 19 days

+$951.40

more attributed revenue

over the same 19 days, on $3.44 more ad spend

What changed, and what did not

One number here is the whole point: the spend. It barely moved. Everything that money bought did.

Ad spend

$373.42 $376.86

Held flat · +$3.44

The constant in this comparison: the daily budget never left $20.

Attributed revenue

$602.80 $1,554.20

+158%

What Meta credited to the campaign in each window.

Real ROAS

1.61× 4.12×

+156%

Revenue per dollar spent. The target set in the app was 3.01×.

Real CPA

$33.95 $14.49

−57%

Cost per purchase. The target set in the app was $20.

Purchases

11 26

+136%

Conversions Meta attributed over the period.

Average CTR

1.24% 1.94%

+56%

Share of people who saw the ad and clicked it.

The same three screens, 19 days apart

Nothing is cropped or rearranged. Same app, same campaign, same layout — use the switch on each frame to move between the two periods.

The home screen names the next thing to do

AdPilot's dashboard always ends on one recommended action. Before, it was asking the merchant to go and read the optimisation report, and it printed the baseline it was worried about. After the plan had run, the same card reports a campaign in the monitoring phase — which is the state you actually want to be in.

  • Before: “Review optimization report — baseline ROAS 1.61x and CPA $33.95.”
  • After: “Campaign in monitoring phase — ROAS 4.12x and CPA $14.49. Review again after 72 hours.”
Dashboard — Use the switch to flip between the two periods.
AdPilot dashboard inside the Shopify admin before the plan, recommending a review of the optimisation report with baseline ROAS 1.61x and CPA $33.95. The same AdPilot dashboard after the plan, reporting a campaign in the monitoring phase with ROAS 4.12x and CPA $14.49.
Before — Aug 7–25, 2026 After — Aug 26 – Sep 13, 2026

The same five boxes, 19 days later

This is the screen AdPilot builds from the CSV you export out of Meta Ads Manager. Same layout, same five figures, same campaign — only the period changed. Before, ROAS sat under the 2.8×–3.4× forecast and CPA ran about 70% over target. After, ROAS cleared the top of that forecast and CPA landed roughly 28% under target.

  • Before: $373.42 spent, 11 purchases, $602.80 attributed.
  • After: $376.86 spent, 26 purchases, $1,554.20 attributed.
Optimisation report — Use the switch to flip between the two periods.
AdPilot optimisation report for Aug 7–25, 2026: $373.42 spend, 11 conversions, ROAS 1.61x, CPA $33.95, CTR 1.24%. AdPilot optimisation report for Aug 26 – Sep 13, 2026: $376.86 spend, 26 conversions, ROAS 4.12x, CPA $14.49, CTR 1.94%.
Before — Aug 7–25, 2026 After — Aug 26 – Sep 13, 2026

A verdict on every ad set, with the reasoning attached

AdPilot does not only grade the campaign, it grades each ad set and shows its working: spend, purchases, ROAS, CPA, CTR, CPC, and how confident it is in the call. Before, every verdict carried low confidence and one ad set had burned $95.84 for a single sale. After, two of the three are a straight “keep” at medium confidence, and the one that was losing money is still parked.

  • Before: Broad “refresh creative”, Fashion Interests “review / pause”, Retargeting “keep” — all at low confidence.
  • After: Broad and Retargeting “keep” at medium confidence, Fashion Interests “keep paused”.
Ad set verdicts — Use the switch to flip between the two periods.
AdPilot ad set verdicts for Aug 7–25, 2026, with refresh creative, review or pause and keep decisions, all at low confidence. AdPilot ad set verdicts for Aug 26 – Sep 13, 2026, with two keep decisions at medium confidence and one ad set kept paused.
Before — Aug 7–25, 2026 After — Aug 26 – Sep 13, 2026

The plan that ran in between

Every optimisation report ends with an action plan for the next three days. This is the one AdPilot wrote on August 26, and applying it is the only thing that happened between the two sets of screenshots.

  1. Keep the total budget at $20 a day.
  2. Review Fashion Interests first: $95.84 spent for one purchase. Pause it if tracking is complete and the weakness holds.
  3. Test a new clothing creative inside Broad.
  4. Shift budget gradually toward Broad and Retargeting, up to $15 and $5 a day.
  5. Recheck after 72 hours. Do not scale on 11 purchases alone.

What the second report read back

Fashion Interests stopped at $25.26 and stayed paused. Broad held $15 a day and Retargeting $5, and the daily total never left $20. Broad's CTR went from 1.26% to 1.90% and its CPC from $0.90 to $0.46 — the same money simply bought better traffic. And the new plan is still “hold the budget, check attribution”, not “scale”.

Ad set by ad set

This is where the extra revenue came from. Budget moved off the ad set that was not converting and onto the two that were. That is the entire manoeuvre.

Return on ad spend, before → after Before After Target 3.01×
  • Broad 1.52× 3.74× 1.52× 3.74×
  • Fashion Interests 0.58× 2.17× 0.58× 2.17×
  • Retargeting 3.53× 5.61× 3.53× 5.61×
  • Whole campaign 1.61× 4.12× 1.61× 4.12×
Figures taken from the two AdPilot optimisation reports shown above. The ad set rows add up to the campaign totals.
Ad set Before / After Verdict Spend Purchases Revenue ROAS CPA
Broad Before Refresh creative $215.76 6 $328.80 1.52× $35.96
After Keep $253.47 16 $948.80 3.74× $15.84
Fashion Interests Before Review / pause $95.84 1 $56.00 0.58× $95.84
After Keep paused $25.26 1 $54.90 2.17× $25.26
Retargeting Before Keep $61.82 4 $218.00 3.53× $15.46
After Keep $98.13 9 $550.50 5.61× $10.90
Whole campaign Before $373.42 11 $602.80 1.61× $33.95
After $376.86 26 $1,554.20 4.12× $14.49

What this page is not

  • One store, one campaign, two windows of 19 days. It is a real result, not a promised one — your catalogue, your market and your creative decide most of the outcome.
  • Two consecutive periods are a comparison, not a controlled experiment. Season, stock and the new creative all moved at the same time the budget did.
  • 26 purchases is a small sample, and AdPilot says so inside the report itself. That is exactly why its next plan is to hold the budget rather than scale it.
  • AdPilot never touched the ad account. It reads your Shopify catalogue and nothing else, it does not connect to Meta, and every change here was made by the merchant by hand in Ads Manager. The app read a CSV and gave back a plan.
Install on Shopify

Plan your next Meta campaign in a minute

Install AdPilot from the Shopify App Store and generate your first campaign today. The free plan needs no credit card.