Multi-Cloud Billing Export Analyzer
See where an AWS, Azure or Google Cloud bill goes, find waste and forecast the month.
Try before you buy.
- Free preview: every total and count, the month’s forecast, the first rows of each breakdown and list (up to 10) and the daily chart under a MySmartCoPilot mark.
- Locked until you unlock it: download and copy.
- Unlock: Premium pass, ₹799 for 30 days or ₹249 for 1 week, a one-time payment that never renews. Unlock: Premium pass, $19.99 for 30 days or $7.99 for 1 week, a one-time payment that never renews.
Ways to unlock shows how to get the full result.
Printing this result is locked in the free preview.
Billing exports
Paste a CSV instead
Where do I get my export?
- AWS: in Billing and Cost Management, open Data Exports and create a standard export (CUR 2.0) or a FOCUS export to an S3 bucket; download all the
.csv.gzor.snappy.parquetparts of a month from itsBILLING_PERIOD=YYYY-MMfolder. Legacy CUR files (.csv.gz,.zip) work as they are, and so does Cost Explorer’s Download CSV. - Azure: in Cost Management, create an export of cost and usage details (actual or amortized) or FOCUS, or download the usage details CSV from Cost analysis.
- Google Cloud: with billing export to BigQuery, run a query on the export table and save the result as CSV, or export the table as JSON lines or Parquet; the Reports page’s cost table download works too.
Columns of your table
This file is not one of the providers’ export layouts, so its columns were guessed. Check them and read the file again.
Costs in different currencies are never added together.
Cost by day
Show the days as a table
| Day | Cost | One-time charges |
|---|
Forecast for the month
Estimates from the days in this export, not a promise: commitments bought, prices changed or workloads started later are not in it.
Breakdown
Unusual days
Idle and waste findings
Check each one before acting: the export shows cost, not what a resource is for.
Untagged spend
| Service | Untagged cost | Share |
|---|
| Resource | Cost |
|---|
Month on month
Reports
The Excel workbook has every breakdown, the days, the unusual days, the findings and the untagged resources on their own sheets; the PDF is a report to share.
Locked in the free preview. Opens the ways to unlock this result.
Locked in the free preview. Batch runs unlock with a pass.
Locked in the free preview. Query results unlock with a pass.
Results are estimates for general information and planning, not financial advice. Banks and institutions may calculate differently (rounding, fees, rate changes). Confirm figures with your lender or a qualified adviser before deciding.
How this tool is checked
- Based on
- the method set out under ‘How the figures are worked out’.
- Sources
-
This guide cites 5 sources, among them:
- Tests
- 25 automated tests check its results.
- Found an error?
- Report a problem or write to support@mysmartcopilot.com, with what you entered and the result you expected.
About the Multi-Cloud Billing Export Analyzer
Load the cost export your cloud already writes — an AWS Cost and Usage Report (the legacy CUR or CUR 2.0 from Data Exports), a FOCUS export from any provider, an Azure cost export or a Google Cloud billing export — and see where the money goes by service, account, region, usage type, resource and tag, day by day.
The analyzer flags unusual days and new services, finds idle and waste (unused reservations and savings plans, public IP addresses nothing uses, NAT gateways and load balancers without traffic, gp2 volumes, older instance generations, development machines running at weekends), measures untagged spend and forecasts the month. Switch between billed cost (as invoiced), effective cost (commitments amortized) and list cost at any time.
Files are read in your browser by a background worker — CSV, CSV.GZ, ZIP, Parquet, JSON lines and Excel — so reports of millions of lines in many parts work, and nothing is uploaded. Without a pass the report is a free preview: every total and count, the forecast, the first rows of each list and the chart under a mark; the full report and the Excel, PDF and CSV files unlock with a Premium pass.
How to use it
- Fetch your cost data: in AWS Data Exports, every
.csv.gzor.snappy.parquetpart of a month (CUR 2.0 or FOCUS; legacy CUR files work too); in Azure Cost Management, a cost and usage details export; for Google Cloud, a query on the BigQuery billing export saved as CSV, JSON lines or Parquet. - Choose the files (all parts at once) or Load sample for a made-up bill. The worker shows what it read: the export type, the period and the number of lines.
- Read the totals and the month’s forecast, then pick Break down by for services, accounts, regions, usage types, resources, tag values or charge types.
- Check Unusual days and Idle and waste findings: each finding says what was found, what it costs a month and what to check before acting.
- Without a pass the report stays a free preview; the Excel workbook, the PDF report, the CSV of any breakdown and Copy summary unlock with a Premium pass.
Examples
A CUR 2.0 export of 42 days: three accounts, a Compute Savings Plan, a development fleet of t2 instances and a NAT traffic spike on 5 October
Findings: unused Savings Plan commitment, an idle public IPv4 address, a NAT gateway and a load balancer with no traffic, six gp2 volumes, t2 instances, three dev instances running at weekends. Unusual days: Amazon Elastic Compute Cloud on 5 October, driven by NatGateway-Bytes; Amazon SageMaker new on 24 September.
A No Upfront Savings Plan of $0.60 an hour that covers $0.553 an hour of instance usage at its rates
Billed: the plan’s $14.40 a day shows under “Savings Plans for AWS Compute usage”. Effective: $13.27 a day moves onto the instances it covered and $1.13 a day shows as unused commitment.
Common uses
- Finding out which team, service or account drove this month’s bill up, and on which day it started.
- A monthly cost review for a startup or agency without a paid FinOps platform, from the files the cloud already exports.
- Cleaning up waste before buying Savings Plans or reservations: idle addresses, NAT gateways, load balancers and unused commitments.
- Measuring tag coverage before turning on chargeback, and listing the untagged resources to fix first.
Which exports it reads
- AWS: the legacy Cost and Usage Report (
lineItem/UnblendedCostcolumns, CSV, CSV.GZ or ZIP), CUR 2.0 and FOCUS 1.0 from Data Exports (line_item_unblended_costcolumns with theresource_tagsandproductmaps, CSV.GZ or.snappy.parquetparts), the Athena layout of the legacy CUR, and Cost Explorer’s CSV download (a day per row and a column per service). Column names: CUR 2.0 table dictionary, FOCUS 1.0 with AWS columns, file names and parts. - FOCUS from any provider:
BilledCost,EffectiveCost,ListCost,ChargeCategory,PricingCategory,CommitmentDiscountStatus,Tags(FOCUS specification). - Azure: cost details of Enterprise Agreement, Microsoft Customer Agreement and pay-as-you-go accounts (
CostInBillingCurrency,CostorPreTaxCost,MeterCategory,ResourceGroup,ChargeType,PricingModel,Tags; dates month first) (the fields). - Google Cloud: the BigQuery billing export flattened to CSV (
service.description,sku.description,project.id,cost,credits,cost_type,labels) or exported as JSON lines or Parquet with its nested fields (export structure). - Any other cost table with a date and a cost column: the columns are guessed and can be chosen by hand.
How the figures are worked out
- Billed cost is the invoice amount: AWS unblended cost, FOCUS
BilledCost, AzureCostInBillingCurrency, Google Cloudcostplus the credits in each row (Google’s own invoice query addsSUM(cost) + SUM(credits.amount)). - Effective cost spreads commitments over the usage they cover. For the AWS CUR, Savings Plan covered usage counts at
SavingsPlanEffectiveCost, reserved usage at the reservation’s effective cost, upfront fees and negations at 0, and recurring fees only for their unused part (Savings Plans in the CUR); FOCUS givesEffectiveCostdirectly. - Unusual days are higher (or lower) than the median of the 14 days before by more than three scaled median absolute deviations (1.4826 × MAD), by at least a quarter of that median and by at least 1 % of a typical day of the whole bill. A service whose first charge comes after the first week is listed as new.
- The forecast adds, for each day left, the median of the last 7 complete days without one-time charges (purchases, tax and credits that are not posted every day); the range uses the 20th and 80th percentiles of the last 14 days and the trend their Theil–Sen slope. A last day that stops early (exports refresh during the day) counts as still to come.
- Untagged spend is the share of usage with a resource id that carries no tag (or not the chosen tag); tax, credits, purchases, support and usage without a resource id cannot be tagged and are left out.
What the idle and waste findings look for
- Unused commitments: the unused part of reservations and savings plans (AWS
RIFeeandSavingsPlanRecurringFeelines, AzureUnusedReservationandUnusedSavingsPlan, FOCUSCommitmentDiscountStatus= Unused). Beside the totals, reservations and savings plans used is their utilisation: the covered usage at its amortized cost ÷ (that plus the unused part). - Idle public IP addresses: AWS
PublicIPv4:IdleAddressandElasticIP:IdleAddressusage, Google Cloud “Static Ip Charge”. - NAT gateways and load balancers without traffic: hourly charges with under 1 GB a month processed, or under 0.01 load balancer capacity units an hour.
- gp2 volumes: AWS documents gp3 at a 20 % lower price per GiB, so the estimated saving is a fifth of their cost.
- Non-production resources running around the clock: tagged dev, test or staging, charged every day including weekends; needed 12 hours on weekdays, they would run 60 of 168 hours, about 64 % less.
- Older instance generations (AWS t2, m4, c4, r4 and earlier, Google N1, Azure Av2 and Dv2), a large data-transfer share and steady on-demand compute that a commitment could cover, with a link to the AWS Savings Plans and Reserved Instances planner.
Limitations
- An export shows cost, not use: CPU, memory and request metrics are not in it, so right-sizing needs your monitoring data. Every finding says what to check before acting.
- Exports of different currencies are analysed separately, never added together. Days are UTC days.
- Very large files take time on a phone; a laptop reads a few hundred thousand lines a second. Up to 300,000 resources are kept one by one; any more are added together in one row.
- Brotli-compressed Parquet files are not read (AWS, Azure and BigQuery write Snappy, gzip or Zstandard, which are). Encrypted or password-protected ZIP files must be unpacked first.
Privacy
On this device: nothing is sent
Everything happens in your browser. What you enter or open here is not uploaded or stored by MySmartCoPilot.
Frequently asked questions
What do I get without a pass?
Without a pass, Multi-Cloud Billing Export Analyzer shows every total and count, the month’s forecast, the first rows of each breakdown and list (up to 10) and the daily chart under a MySmartCoPilot mark. Until you unlock it, the result can’t be downloaded or copied. A Premium or Ultimate pass, a one-time payment that never renews, unlocks the full result. The pricing page lists the passes and their prices.
Is my billing data uploaded?
No. The files are read by a worker inside your browser; account ids, resource names and tags stay on your device. Nothing is sent to any server.
Why does the total differ from my invoice?
Check the cost measure: billed cost matches the invoice, effective cost moves commitment fees onto the usage they cover. Make sure you chose every part of the month (exports arrive in numbered chunks) and that the month is closed: a running month is refreshed during the day, and Azure adds its rounding adjustment only when the invoice is ready.
Which AWS export should I use?
CUR 2.0 from Data Exports with resource ids included gives the most: per-resource cost, tags and the Savings Plan columns. Daily granularity is enough for this report; hourly makes larger files. The FOCUS export works too and has the same columns for every provider.
How is the month forecast made?
The cost so far plus, for each day left, the median of the last 7 complete days without one-time charges. The likely range uses the 20th and 80th percentiles of the last 14 days. It assumes the coming days look like the recent ones: a launch, a commitment bought or a deleted environment changes it.
Can I use it for several accounts and months?
Yes: choose all the files at once. Several accounts in one export (an AWS organisation, an Azure billing account) are split by account, subscription or project, and several months give a month-on-month comparison by service.