ML Cost Attribution by Feature: Make Spend Visible
Most ML platforms hide where the spend goes. The attribution layer that lets product owners see which features cost what, and the conversations it unlocks.
Why product owners need this
Most ML platforms emit one big monthly bill that product owners cannot decompose into per-feature contributions. Attribution turns the bill into per-feature line items so the product team sees that the recommendation widget cost $42k while the search box cost $8k; the conversation changes from “is ML too expensive?” to “is the recommendation widget paying its keep?”.
- Single big bill. Product owners cannot tell which feature drove the spend.
- Per-feature line items. Recommendation widget $42k, search box $8k; the asymmetry surfaces.
- Conversation changes. From “ML too expensive” to “feature paying its keep”; the right question.
- Per-feature accountability. Owners can defend or optimise; the dashboard drives the decision.
How to attribute
Attribution starts at the feature boundary. Tag every inference request with a small string (“reco-v3”, “search-typeahead”, “classifier-spam”); roll up tags daily summing tokens, GPU seconds, and dollar costs per tag into a small table any dashboard can read; join to product analytics for feature usage by user, giving cost-per-user for each feature.
- Feature-boundary tag. Small string identifying the feature; tagged at request time.
- Daily rollup. Sum tokens, GPU seconds, dollar costs per tag.
- Roll-up table. Small, queryable; any dashboard can read it.
- Join to product analytics. Feature usage by user; gives cost-per-user metric directly.
What the dashboard shows
Three views drive the conversation. Per-feature spend over time (trends matter, week-over-week changes catch silent regressions); cost-per-user per feature (the most useful number for product decisions, $0.50 healthy, $5 needs attention); top 10 most expensive features ranked (list usually surprises product, the surprise is the value of the dashboard).
- Per-feature spend over time. Trends matter; WoW changes catch silent regressions.
- Cost-per-user. $0.50 healthy; $5 needs attention; the product-decision metric.
- Top 10 ranked. Usually surprises product; the surprise is the dashboard’s value.
- Per-team subset. Each team filters to their features; supports targeted action.
The policy that closes the loop
Three policies close the attribution loop. Each feature has a cost owner who sees the dashboard weekly and is accountable for explaining cost spikes; feature launches require a cost projection compared to actuals after 30 days, gaps drive the next iteration; quarterly rightsizing review takes the top 5 most expensive features through an optimisation pass that typically yields 30-50% savings without quality loss.
- Per-feature cost owner. Sees dashboard weekly; accountable for spikes.
- Cost projection at launch. Compared to actuals after 30 days; gaps drive the next iteration.
- Quarterly top-5 rightsizing. 30-50% savings without quality loss; the recurring optimisation.
- Per-cycle savings record. Documented per quarter; supports continued investment.