skills/data-analytics/profit-margin-analysis/SKILL.md
Analyze gross and net profit margins by product, category, channel, and customer segment with cost attribution, benchmarking, and trend visualization
npx skillsauth add finsilabs/awesome-ecommerce-skills profit-margin-analysisInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Profit margin analysis identifies exactly where your business makes and loses money — broken down by products, categories, channels, and customer segments. A product that accounts for 40% of revenue might contribute only 10% of gross profit — or actually lose money once fulfillment, marketing, and overhead are factored in.
This skill guides you through building a clear margin hierarchy using your existing platform tools and profit analytics apps, without requiring a data warehouse.
Before pulling any data, define the margin levels you will track. Use this waterfall consistently across all analyses:
Gross Revenue (selling price × units sold)
- Discounts & coupons applied
- Returns & refunds
= Net Revenue
- Product COGS (landed cost: purchase price + freight + duties)
= Gross Profit
Gross Margin % = Gross Profit / Net Revenue × 100
- Outbound shipping (actual label cost or estimate)
- Payment processing fees (~2.9% + $0.30 for Stripe/Shopify Payments)
- Marketplace fees (Amazon referral + FBA fees; eBay final value fees)
- Packaging materials
= Fulfillment-Adjusted Gross Profit
Fulfillment-Adjusted Margin %
- Direct marketing spend (attributed to this channel/product)
= Contribution Margin
Contribution Margin % = Contribution Margin / Net Revenue × 100
- Allocated overhead (warehouse, software, headcount allocation)
= Net Operating Profit
Net Margin %
Why contribution margin matters most for ecommerce decisions: Gross margin ignores fulfillment and marketing costs that are often the biggest swing factors. Contribution margin per unit is the number that actually governs whether it makes sense to sell more of a product or scale a channel.
Accurate margin analysis starts with accurate cost data. Enter landed cost (not just purchase price) for every product.
Limitations of Shopify's built-in profit reports:
Recommended Shopify apps for complete margin analysis:
BeProfit setup for contribution margin:
By product and SKU:
In your platform analytics or profit app, sort products by contribution margin % ascending to find your least profitable SKUs:
By channel:
Compare the same product sold on different channels:
| Metric | Your Website | Amazon FBA | Wholesale | |--------|-------------|-----------|---------| | Gross Revenue per unit | $39.99 | $39.99 | $20.00 (your price to retailer) | | Payment/marketplace fees | 3.2% | 15% referral + $4.50 FBA | 0% (invoice-based) | | Outbound shipping | $5.00 | Included in FBA fee | Bulk freight (lower per unit) | | Gross Margin % | 62% | 38% | 35% | | Contribution Margin % | 48% | 25% | 28% |
This shows that despite Amazon's lower margin %, the channel may still be valuable for volume and brand visibility — but you need the numbers to decide.
By category:
Group your products into categories and compare average contribution margin % across them:
| Business Type | Gross Margin | Contribution Margin | Net Margin | |---------------|-------------|--------------------|-----------| | Branded DTC (consumables) | 55–75% | 30–50% | 5–20% | | Branded DTC (apparel) | 55–70% | 25–45% | 3–15% | | Electronics reseller | 10–25% | 5–15% | 1–5% | | Amazon FBA reseller | 15–35% | 5–20% | 2–8% | | Subscription box | 40–60% | 20–40% | 5–15% | | Wholesale / B2B | 20–40% | 15–30% | 3–12% |
If your gross margin is significantly below these ranges, investigate:
Once you have margin data by SKU, prioritize improvements:
SKU profitability tiering:
Quick wins for margin improvement:
| Problem | Solution | |---------|----------| | Using purchase price instead of landed cost as COGS | Purchase price alone understates COGS by 15–40% for imported goods; always include freight, duties, and prep costs in the cost per item field | | Not attributing variable marketing to products | If you run SKU-level ad campaigns, that marketing spend is a direct cost of those sales; exclude it from overhead and attribute it to the relevant SKUs | | Comparing Amazon vs. website margins without normalizing fulfillment | Amazon FBA gross margins look lower than DTC margins because FBA fees are large; normalize to contribution margin (net of fulfillment) for fair comparisons | | Analyzing margin without volume context | A 60% gross margin product doing $500/month is less important than a 35% margin product doing $500,000/month; always show margin % alongside absolute profit contribution | | Historical margin changes when COGS is updated | Use point-in-time cost records in your profit analytics app; BeProfit and Lifetimely track cost history so historical margins are not retroactively recalculated |
tools
Let shoppers save products to a wishlist, share it with friends, and get notified when saved items come back in stock or drop in price
development
Build a themeable storefront with design tokens and CSS custom properties that supports white-labeling, multi-brand variants, and dark mode
development
Speed up product discovery with instant search suggestions, fuzzy typo matching, and category-aware results powered by Algolia or Elasticsearch
development
Build a mobile-first storefront with thumb-friendly navigation, sticky add-to-cart buttons, and touch-optimized components for high mobile conversion