1. Pull order data. Shopify orders, Amazon Seller Central transactions, marketplace settlements. Per line item, including the discount applied and the channel.
2. Pull the promo calendar. Each promotion has a start date, end date, eligible SKUs, discount level, and target channels. The calendar lives in a table.
3. Pull cost data. Per-SKU cost from NetSuite, your PLM, or an Excel cost file. Plus channel-specific fees for the margin calculation.
4. Tag each order line. Promo or non-promo, which promotion if so, channel, and product category.
5. Calculate revenue and margin. Gross revenue, net of discounts, less COGS, less channel fees. Per order line, then aggregated per promotion.
6. Compare against baseline. Same SKU in the equivalent non-promo window. Or year-over-year same week. Or sibling SKUs that did not promote. The baseline method is configurable.
7. Output the report. Per-promotion summary, SKU-level dig, alert when a promotion lost money, dashboard for the marketing-finance review.