EBS vs EFS vs S3: Block, File and Object Storage Compared
Three ways to store data on AWS, and what each costs per GB
Price by storage type
On-demand storage rates in US East (N. Virginia). The 500 GB column is storage only. Lowest per-GB rate is highlighted.
| Service | Per GB‑month | 500 GB per month | Billed on | Extra charges | Reachable from |
|---|---|---|---|---|---|
| EBS gp3 (block) | $0.08 | $40.00 | Provisioned size, used or not | IOPS above 3,000 at $0.005 | One instance, one zone |
| EFS Standard (file) | $0.30 | $150.00 | Bytes stored | Throughput modes beyond the default | Many instances, multiple zones |
| EFS One Zone (file) | $0.16 | $80.00 | Bytes stored | Throughput modes beyond the default | Many instances, one zone |
| EFS Infrequent Access (file) | $0.025 | $12.50 | Bytes stored | $0.01 per GB read | Many instances, multiple zones |
| S3 Standard-IA (object) | $0.0125Lowest | $6.25Lowest | Bytes stored | $0.01 per GB retrieved plus requests | HTTP API, from anywhere |
| S3 Standard (object) | $0.023 | $11.50 | Bytes stored | Requests | HTTP API, from anywhere |
Which one to pick
Each recommendation links to the page for that option.
What to watch for
Gaps and gotchas that the price table does not show.
EBS bills for empty space
A 1,000 GB volume costs the same whether it holds 100 GB or 900. Growing a volume is easy; shrinking one is not, so right-sizing means creating a smaller volume and copying data across.
EFS and S3 bill for what you store
You do not provision capacity, so the monthly bill follows your data. EFS Standard only comes out cheaper than gp3 when the EBS volume is more than 3.8 times larger than the data on it.
EBS volumes are zonal
A volume attaches to instances in its own availability zone. Surviving a zone loss needs snapshots or a replicated design. EFS Standard and S3 spread data across zones.
Per-GB price leaves out the access charges
The table shows storage only. EBS adds IOPS above baseline, EFS adds throughput and Infrequent Access reads, and S3 adds requests and retrieval. Run the estimators on each storage page for a full monthly figure.