What you enable
A single FOCUS 1.2 Data Export (FOCUS_1_2_AWS) written as Parquet to an S3
bucket. It carries billed and effective cost, usage, credits, and commitment
(Savings Plans / Reserved Instances) columns in the normalized FOCUS schema.
Setup in CloudShell (recommended)
The connect dialog shows a one-line command. Open AWS CloudShell in the management (payer) account and run it:The external ID is issued by CostGraph and ties the role to your organization. It stops
anyone else who learns your role ARN from assuming it. Never edit it out of the command.
COSTGRAPH_BUCKET to use an existing bucket, or COSTGRAPH_EXPORT_REGION if you
are in a different partition (GovCloud, China).
Setup with Terraform
Prefer infrastructure as code? Apply the equivalent below instead of the script. The export is created in us-east-1 (where AWS billing data lives), soaws_bcmdataexports_export must be managed by an AWS provider configured for that
region. If your root provider targets another region, add an aliased one and point the
export at it.
Read access
CostGraph reads the export bucket with a cross-account role grantings3:GetObject and
s3:ListBucket on the export prefix. The connect flow provides the exact trust policy
and external ID.
Connect in CostGraph
- Open Integrations and choose Amazon Web Services.
- Run the CloudShell command shown there (or apply the Terraform above).
- Paste the
ROLE_ARN,BUCKET,REGION, andPREFIXthe script printed, then connect. - CostGraph assumes the role, validates it can read the export, and starts the first sync.
What CostGraph does with it
- Cost: FOCUS line items normalized to the same canonical model as every other provider, keeping billed and effective cost, credits, and commitment attribution.
- Reconciliation: allocated plus unallocated cost is checked to equal the invoice per billing account per month.
- Allocation: spend attributed by resource, tag, and account, with an explicit unallocated bucket for tax, shared, and commitment costs.