Skip to content

S3 in plain language ​

Hub › AWS › Beginner › S3 in plain language

Goal

After this page you will know what S3 buckets, objects, and regions are, and what makes an S3 bucket name unusual.

Prerequisites

What S3 is ​

S3 (Simple Storage Service) is file storage. You put files in, you get files out, by HTTPS. There are no folders, no file system, no drives — just a flat list of keys mapped to bytes.

Three terms:

  • Bucket — the top-level container. You create one bucket per logical "site" or "project".
  • Object — a single file inside a bucket. Has a key (the filename, e.g. index.html), bytes, and metadata.
  • Region — the AWS data center where the bucket physically lives, like ap-southeast-1. Objects don't cross regions automatically.

Bucket names are global ​

This is the one weird thing about S3: bucket names share a single global namespace across every AWS account on Earth. If someone else has photos, you can't have photos. Names must be:

  • 3 to 63 characters.
  • Lowercase letters, digits, and hyphens only.
  • Globally unique.

The convention is to prefix with something specific to you, like mei-beginner-site-2026. We'll do that on the next page.

What about folders ​

You'll see slashes in S3 keys (photos/2026/06/cat.png) and the console will render them as folders. They aren't folders. S3 stores the full string photos/2026/06/cat.png as one flat key. The folder UI is a console convenience, not a real structure.

For this tier we use exactly one object with the key index.html — no fake folders.

Pricing shape ​

The Free Tier gives you 5 GB of storage, 20,000 GET requests, and 2,000 PUT requests per month for 12 months. A 1 KB HTML file with a handful of visits stays well inside that.

For everything S3 can do, see the official S3 user guide. The pieces we need now are creating a bucket, uploading one object, and reading it back.

Next → Create your first S3 bucket