How to set up an AWS Cost and Usage Report (CUR) 2.0 export for Spotter.
Create the export in your management account — the same account you gave Spotter as the master account. Spotter matches the rows in the export to your integration by the paying account, so an export created in a member account won't show up in Spotter.
1. Create the data export
Go to Billing and Cost Management → Data exports → Create.
Export details
-
Select type: Standard data export
-
Export name:
spotter-cur-2
Data table content settings
-
Select: CUR 2.0
-
Additional export content: Include resource IDs
-
Leave Split cost allocation data off. Spotter doesn't read it, and it adds two extra rows per container per hour, which makes the export much bigger and slower to import.
-
Time granularity: Daily
-
Keep all columns selected. Spotter reads the full set, and rows are skipped if columns are missing.
Data export delivery options
-
Compression type and file format: Parquet - Parquet
-
File versioning: Overwrite existing data export file
Overwrite is required. If every delivery is kept as a new file, Spotter reads all the old copies too, which slows the import and can leave outdated rows behind.
Data export storage settings
-
Use or create an S3 bucket to store exports.
-
S3 path prefix: e.g.
spotter. A prefix is required — Spotter can't read an export written straight to the root of the bucket. -
The bucket policy must let Spotter read the data. After creating the export, edit the bucket policy to include the following blocks:
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "SpotterLambdaPermissions",
"Effect": "Allow",
"Principal": {
"AWS": ["arn:aws:iam::604877540157:role/aws-cur-ingestion", "arn:aws:iam::730660357973:role/aws-cur-ingestion"]
},
"Action": ["s3:ListBucket", "s3:GetObject"],
"Resource": ["<s3-bucket-arn>", "<s3-bucket-arn>/*"]
},
{
"Sid": "SpotterAccountPermissions",
"Effect": "Allow",
"Principal": {
"AWS": ["arn:aws:iam::730660357973:role/Cloud2Admin", "arn:aws:iam::604877540157:role/Cloud2Admin"]
},
"Action": ["s3:ListBucket", "s3:GetObject", "s3:PutObject", "s3:DeleteObject"],
"Resource": ["<s3-bucket-arn>", "<s3-bucket-arn>/*"]
}
]
}
2. Verify the export
-
Check that files appear in the bucket. Expected path:
s3://<bucket-name>/<prefix>/<export-name>/data/BILLING_PERIOD=YYYY-MM/ -
It can take up to 24 hours for the first data to appear.
-
If nothing appears, check that AWS's own permission to write into the bucket wasn't removed when you added the Spotter read permissions.
3. Enter the S3 URI in Spotter
Once files are appearing, go to Admin → Integrations → AWS, open your master account, and on the Details tab find Cost and usage report and select Edit. Enter the URI and save:
s3://<bucket-name>/<prefix>/<export-name>
Give exactly this shape — bucket, one prefix, export name. Spotter builds the rest of the path itself. Once saved, Spotter starts loading the data automatically.
You may also email the S3 URI to us to spotter@cloud2.fi.