Skip to main content
Metrics type: Key MetricsCategory: Ecommerce Platform
Top finding for the Finance Controller. SKUs whose unit margin has materially eroded in the last quarter.

At a glance

Top finding for the Finance Manager / SAP Functional Analyst working on margin protection. Materials whose unit margin has materially eroded in the last 90 days vs the prior 90 days, ranked by absolute margin-dollar impact. Each row is a material that used to make money and now makes less, with the magnitude and direction of the erosion. Alert table, not a single number.

Calculation

Calculated automatically from your SAP data. See the At a glance summary above for what the metric tracks and the worked example below for a typical reading.

Worked example

A US enterprise B2B distributor on S/4HANA Cloud. 90-day window 03 Feb 26 to 03 May 26 vs prior 90 days 05 Nov 25 to 02 Feb 26. Headline: 14 materials flagged with margin erosion. Total period gross-profit impact: -$680,000. Top 6 erosion cases: Investigation walkthrough:
  1. MAT-A23 dropped 10pp on a high-volume material. Drilling into Margin by SKU and the Sales Document history shows: standard cost increased 32perunit(procurementside,supplierpriceincrease)buttheSDsellingpricewasnotupdatedinthepricingconditionrecord(VK11).Result:marginoneveryunitsoldwas32 per unit (procurement-side, supplier price increase) but the SD selling price was not updated in the pricing condition record (VK11). Result: margin on every unit sold was 32 lower than it should have been. Across 1,420 units, $45K of pure margin loss.
  2. The fix is a price update. SD analyst raises the customer-specific or base condition by $32 (or whatever the cost increase was, plus the merchant’s standard margin uplift). T-code VK12 (change condition record).
  3. MAT-C18 is a different problem. Standard cost did not move; selling price dropped. This is volume-discount creep: a key customer renegotiated terms and the new pricing applies even to small orders. The fix is segmenting the discount: keep it for large orders, restore the base price for small.
  4. Pareto applies. The top 6 materials drive 78% of the total margin erosion (632Kof632K of 680K). Action those 6 first; the rest are smaller fish.
  5. Multi-Company-Code investigation. If a material’s margin dropped only in CC 2000 but not CC 1000, the issue is local (regional pricing or local-supplier cost). If it dropped across all CCs, it is a global supplier-price issue. The card shows per-CC breakdown on hover.
Action playbook:
  • For each flagged material, classify the cause. Cost-up (procurement-side), Price-down (sales-side), or Mix-shift (within the material, smaller-margin variants now dominate). Vortex IQ surfaces the classification automatically.
  • Cost-up materials -> price update via VK11 / VK12 in SAP, plus procurement renegotiation if possible.
  • Price-down materials -> review discount records (VK33), tighten approval thresholds.
  • Mix-shift materials -> usually requires SKU-level pricing strategy review (e.g. raise low-margin variant prices).

Sibling cards merchants should reference together

Reconciling against the vendor’s own dashboard

Where to look in S/4HANA Cloud:
Margin Analysis Fiori app, drill by material CO-PA Margin Reporting transaction KE30 / KE31 Material Price Analysis transaction CKM3N (price history per material) Embedded Analytics: CDS view I_MaterialMarginContribution
Direct deep-link: https://my{tenant}.s4hana.cloud.sap/sap/bc/ui2/flp#MarginAnalysis-display Why our list may legitimately differ from a manual SAP CO-PA query: Cross-connector reconciliation: This is the SAP-side answer; commerce platforms cannot show true margin erosion because they do not own COGS. The cross-platform finding is “Dead Stock with Active Ad Spend” where forced markdowns to clear advertised dead stock cause some of the erosion this card detects.

Known limitations / merchant FAQs

Why 90 days vs 90 days? Quarterly comparison aligns with how Finance reviews margin. Tunable to 30 vs 30 (monthly), 180 vs 180 (semi-annual). My standard prices are stale, will the card flag false positives? Possibly. If a material has price control S (standard) and the standard cost has not been updated in 6 months while procurement cost has risen, the card detects margin erosion via Material Ledger / Actual Costing if active. Without Actual Costing, the standard-cost lag hides the erosion. Recommendation: run periodic standard-cost updates (Fiori app Update Standard Prices). Materials with very low volume, do they show up? Filtered by the $5K period impact threshold by default. A material that sold 3 units with 30% margin drop has small dollar impact and is filtered out. Tunable. New product launches: their margin profile is unstable, false flag? Configurable warmup (default 90 days from first sale). New materials within warmup are excluded. Multi-Company-Code: a material’s margin can differ across CCs, how does the card handle it? Computed per material per CC. A material flagging in CC 1000 but stable in CC 2000 shows only the CC 1000 row. Pivot to consolidated view rolls up per material. SAP CO-PA shows different numbers, why? CO-PA Margin Analysis can include cost components (allocated overhead, freight-out, marketing) beyond direct COGS. The card is gross margin only (revenue minus direct COGS). Reconcile by stripping cost components from CO-PA. Discounts via condition records, how detected? The card uses actual selling price net of discounts (the SD pricing-procedure end result). If a key customer renegotiated a discount that now applies, the card sees the lower net price and flags the erosion. Drilling into the Sales Document history shows which orders / which condition records moved. T-codes for drilling in? KE30 (CO-PA), VK13 (display condition record), CKM3N (price history), MR21 (price change), VBRK / VBRP (Billing Document detail).

Tracked live in Vortex IQ Nerve Centre

Margin Erosion Alerts is one of hundreds of KPI pulses Vortex IQ tracks across SAP and 70+ other ecommerce connectors. Nerve Centre runs the detection layer; Vortex Mind investigates the cause when something moves; Ask Viq lets you interrogate any number in plain English. Start for free or book a demo to see this metric running on your own data.