Operations

AWS Cost Checker

Match AWS spend to each of your customers and compare it against the tier they're contracted on. Catch over-tier customers before billing close, surface upsell candidates with real usage data, and send customers a usage report they can audit themselves.

AWS Cost Checker matches your AWS spend back to individual customers and compares each customer's actual usage to the tier they're contracted on, so you stop discovering overage three weeks after billing close. It attributes EC2, RDS, S3, and other AWS service spend by customer using whichever boundary you already operate on — cost allocation tags, separate AWS accounts under Organizations, or assumed-role segmentation for shared infrastructure — then runs each customer's usage against your tier structure with configurable thresholds (warn at 80%, alert at 100%, escalate at 120%). When a customer crosses a boundary mid-month, you get a Slack alert with the trajectory and projected end-of-month overage, so you can decide whether to enforce overage billing, upsell to the next tier, or absorb the cost while the relationship matures. Monthly usage snapshots get stored automatically so customer disputes have a paper trail, and every customer gets a branded usage URL they can self-serve — which eliminates the 'why is our invoice this high' email thread your CSM lives in. Built for infra-heavy SaaS founders running usage-based or tiered pricing on AWS who keep losing gross margin to customers they haven't reclassified.
Per-customer AWS cost attribution via cost allocation tags, account splits, or assumed-role boundaries
Tier breach detection with configurable thresholds (warn at 80%, alert at 100%, escalate at 120%)
Automated monthly usage snapshots stored for audit and customer disputes
Shareable per-customer usage reports — branded web URL or PDF
Forecast next-month spend per customer from rolling 30-day usage curves
Slack and email alerts when a customer crosses a tier boundary mid-cycle
Cohort analysis: which tiers grow the fastest, where gross-margin leakage is concentrated

Set up per-customer cost attribution

  1. 1Connect your AWS organization — Starch reads Cost Explorer, CloudWatch, and Organizations to discover accounts and existing tagging.
  2. 2Tell AWS Cost Checker how you segment customers: by cost allocation tag, by AWS account, by assumed-role boundary, or a combination.
  3. 3Define your tier structure — what's included in each tier (compute hours, storage GB, data transfer), and the overage thresholds per tier.
  4. 4Map your existing customers to their contracted tier; AWS Cost Checker backfills 90 days of usage so you immediately see who is currently misclassified.
  5. 5Set Slack and email alerts at 80%, 100%, and 120% of tier thresholds, and pick who gets pinged for each level.

Handle a mid-month tier breach

  1. 1Slack alert fires: Acme Corp is at 110% of their Pro tier with 8 days left in the month.
  2. 2Open the customer detail view to see usage by service and the 30-day trajectory.
  3. 3Decide the play: enforce overage (push the spillover to billing), upsell to Enterprise (CSM contacts the customer with the usage URL), or absorb (one-off note for finance).
  4. 4If upselling, send the customer their branded usage URL showing the last 6 months so they can verify the case for themselves.
  5. 5Log the decision in the customer record so finance closes the month with the right number and there's a paper trail for next quarter's review.

Reconcile AWS gross margin before a board update

  1. 1Ask AWS Cost Checker for total AWS spend and gross margin by tier for the trailing quarter.
  2. 2Drill into the lowest-margin tier to see which customers are pulling it down — flat-fee contracts that have grown into usage that wipes out their margin.
  3. 3Export a board-ready summary of gross margin by tier with the top 3 reclassification candidates called out.
  4. 4Use the same data to inform the next round of contract renewals — customers whose tier no longer matches their usage get a renegotiation conversation.
"Which customers are over their tier right now and by how much?"
"Project next month's AWS spend per customer based on the last 30 days"
"Generate a usage report for Acme Corp showing the last 6 months by service"
"Which Pro-tier customers are growing fast enough to push into Enterprise this quarter?"
"Slack me when any customer crosses 80% of their tier threshold"
"Show me total AWS gross margin by tier this quarter"
How does it attribute AWS spend to individual customers?
However you already segment customers in AWS — cost allocation tags (per-customer tags on EC2, RDS, and other resources), separate AWS accounts under Organizations, or assumed-role boundaries for shared infrastructure. You tell AWS Cost Checker how your segmentation works once, and it pulls Cost Explorer and CloudWatch data on that boundary going forward. If your tagging is incomplete, it flags the unattributed spend so you can decide how to allocate it.
What if my pricing tiers aren't strictly usage-based?
It still works. You define what a tier means — compute hours, storage GB, data transfer, request volume, or a weighted blend — and AWS Cost Checker tracks usage against those definitions. Hybrid pricing (flat fee plus overage above a threshold) is supported by defining the overage point per tier. The tier configuration lives alongside the customer record, so when a customer's contract changes you update it in one place.
Does it actually charge customers, or just surface the data?
It surfaces the data and generates the report. You still run billing through Stripe, QuickBooks, or wherever your invoicing lives. AWS Cost Checker tells you which customers to bill what; your existing billing system handles the invoice. For founders who want to close the loop, Starch can push the calculated overage line items into Stripe or QuickBooks via a custom automation.
How quickly do alerts fire when a customer crosses a threshold?
Within 4 hours of the underlying AWS Cost Explorer data refreshing, which typically updates once daily. For real-time monitoring closer to sub-hour, Starch can poll CloudWatch metrics on the resources you care about (request counts, data transfer, compute hours) and alert on raw consumption rather than billed cost — useful when a customer ramps fast enough that waiting for the daily Cost Explorer pull would mean missing the window.
What about shared resources that aren't cleanly attributable to one customer?
You configure a split rule — proportional to compute share, request share, or a fixed allocation per customer — and AWS Cost Checker applies it consistently every month. The split logic is documented in every usage report so customers can audit how you arrived at their number. For overhead spend like NAT gateways and Route 53, you can either allocate it across all customers proportionally or carry it as platform cost outside the tier model.
Can customers see their own usage dashboard?
Yes. You generate a branded URL per customer showing the last 90 days of usage by service, their current tier, and how close they are to a tier boundary. This stops the monthly 'where did this charge come from' email thread because customers can self-serve, and it makes upsell conversations easier — you point them at the URL and they see the case for themselves.
Is this useful if I'm not running usage-based pricing yet?
Yes — it's often how founders decide to move toward usage-based pricing. AWS Cost Checker gives you visibility into per-customer cost without committing to a new pricing model. Once you can see that 3 customers are eating 60% of your AWS spend on a flat-fee contract, the case for tiered pricing writes itself.

Get started with AWS Cost Checker

Join founders already using Starch to run their business smarter.