# Athena Scan Cost Checklist (July 2026)

Pricing models (same account can mix):

- **Per query:** billed on data scanned (~$5/TB in many regions — verify pricing page); 10 MB minimum per query; DDL/failed queries not charged.
- **Capacity Reservations:** pay for DPUs/hour for concurrency control; not billed on scanned bytes for queries on that capacity.

## Layout (highest impact)

- [ ] Parquet or ORC (not CSV/JSON) for production tables
- [ ] Compression: Zstd or Snappy; measure scan bytes in Athena console
- [ ] Partition keys match the filters in ≥80% of production queries
- [ ] Avoid functions on partition columns in `WHERE`
- [ ] File size target ~128 MB–1 GB; compact small files (Iceberg `rewrite_data_files` or Glue/EMR)

## Iceberg

- [ ] Prefer Iceberg v2 if Athena must read/write (confirm engine support before v3)
- [ ] Manifests/stats enabling data skipping for selective filters
- [ ] Scheduled compaction + snapshot expiration

## Governance

- [ ] Workgroups per team with per-query scan limits
- [ ] Tag workgroups for Cost Explorer attribution
- [ ] `EXPLAIN` / `EXPLAIN ANALYZE` on top spenders weekly

## Artifact

Cost worksheet companion: `/examples/architecture-blog-2026/modern-data-lake/iceberg-compaction-cost-worksheet.csv`
