Backup Storage Prices

S3 vs EC2: which do you need?

Use S3 for files and EC2 for server-side code. For 10 GiB of files and 100 GiB of monthly downloads, S3 costs $0.27; one Linux t3.micro with disks and public IPv4 costs $12.68 a month before extras.

US East (N. Virginia) · S3 prices checked 9 October 2026 · EC2, EBS and IPv4 prices checked 7 October 2026

S3 for files

$0.27

USD / month

Stores and serves files. Does not run backend code.

EC2 with files on EBS

$12.68

USD / month

Runs code; you manage the server and its disk.

EC2 + S3

$12.16

USD / month

Runs code on EC2 and keeps the files in S3.

10 GiB of files; 100 GiB sent to the internet; 100,000 GETs and 1,000 PUTs. US East (N. Virginia). S3 prices checked 9 October 2026; EC2, EBS and IPv4 prices checked 7 October 2026.

See every charge and assumption
Monthly base cost in USD; the same files and outbound traffic in each column
ChargeS3EC2 + EBSEC2 + S3
S3 file storage$0.23$0.00$0.23
S3 requests$0.05$0.00$0.05
Internet transfer$0.00$0.00$0.00
t3.micro (730 hours)$0.00$7.59$7.59
System disk (8 GiB gp3)$0.00$0.64$0.64
Files on disk (10 GiB gp3)$0.00$0.80$0.00
One public IPv4 (730 hours)$0.00$3.65$3.65

Each column is an alternative bill. Each uses the shared AWS monthly internet-transfer allowance once, assuming it is unused elsewhere. The combined setup serves files directly from S3; backend response traffic is extra. Disks and one public IPv4 are kept for the full month even if you reduce instance hours.

No CDN, DNS, load balancer, NAT gateway, database service, backups, tax, promotional credits or T3 Unlimited CPU-credit surcharges are included. Disk pricing uses gp3 baseline performance. This is a cost comparison, not a claim that t3.micro can handle your traffic.

What will your storage and traffic cost?

The example above uses 100,000 GETs, 1,000 PUTs, 730 running hours and an 8 GiB system disk. Change those inputs here. GiB means 1,073,741,824 bytes, the unit AWS uses for these storage prices.

Worked example, before CDN and other services. Change a field and the costs above follow. Not a performance estimate.

Choose by what the application does

Your projectWhere it runsWhat to budget
Static website or downloadable filesS3 stores HTML, CSS, images and browser JavaScript. Use CloudFront or Amplify for HTTPS website delivery.Storage, requests and your chosen delivery service. The S3 column above prices direct downloads; it is not an S3 + CloudFront quote.
API, WordPress or server-rendered appEC2 can run Python, PHP, Java or Node.js. Put uploads and static assets in S3 when they should live separately from the server.Runtime, system disk, public address and transfer; add a database, backups and any load balancer your app needs. The EC2 + S3 column includes file storage.
An active databaseA database engine needs compute and suitable storage, such as EC2 with EBS or a managed database. S3 can hold exports and backup files.Size the database for RAM, I/O and recovery needs. The small EC2 example is not a database sizing recommendation; RDS prices are not included.
Backup or archive without an application serverS3 or another object-storage provider is the destination. EC2 is unnecessary unless your backup process needs a server to run on.Storage plus the restore bill. Use the S3 class calculator or restore-cost guide for archive tiers.

When S3 and EC2 belong together

An app can run on EC2 while its images, documents and backups stay in S3. That keeps files available independently of a particular server. The database can store object keys rather than the files themselves.

S3 does not execute backend code or replace the writable disk a database expects. Browser JavaScript can be served from S3, but an API it calls needs its own runtime. A large download count alone does not tell you the EC2 size: concurrency, CPU time, memory and caching matter.

Transfers between S3 and EC2 in the same AWS Region have no data-transfer charge. Requests still cost money. Cross-region traffic, NAT gateways and traffic from EC2 to visitors can add charges. If CloudFront serves the files, use its delivery prices instead of the direct-internet transfer line above.

Stopping EC2 stops its runtime charge, but retained EBS disks and public IPv4 addresses still cost money. T3 runs in Unlimited mode by default and sustained CPU use can add credit charges. Choose Standard mode only if its CPU limits suit your app, or include the extra credits in your estimate.

Checked prices and how the bill is calculated

The S3 totals use our checked S3 Standard prices: graduated storage and transfer rates, GET and PUT charges, and the shared internet-transfer allowance. No account-specific credits are applied. Use the S3 calculator to compare storage classes.

EC2 adds running hours × $0.0104 for Linux t3.micro, allocated gp3 GiB × $0.08 per month, and 730 hours × $0.005 for one public IPv4. File disks round up to whole GiB. The combined setup adds EC2's runtime, system disk and IPv4 to the S3 bill.

For other storage providers, compare object-storage costs by workload. For file placement and transfer paths, see egress destinations.