Active installs
3K+
Subscription includes
Support
![]()
Amazon S3 Storage for WooCommerce moves your file delivery to Amazon S3 or Cloudflare R2. Customers download directly from the cloud through secure, time-limited URLs.
WooCommerce’s built-in downloads work until your files get large or your traffic gets serious. The Force Download method streams every file through PHP, which times out on anything over a few
hundred megabytes. The Redirect method serves raw URLs that customers can share freely. Neither was built for digital stores selling video courses, photo archives, or software releases.
Choose the cloud storage that fits your stack. Amazon S3 is the default — pick a region, paste your credentials, select a bucket, and you’re live. Cloudflare R2 is supported natively as an alternative, with zero egress fees and the same signed-URL security model. Both options use the same settings screen and the same delivery pipeline, so switching providers later is a configuration change, not a migration project.
WooCommerce’s default Force Download method reads files into PHP and streams them to the customer. Anywhere above 500 MB, that pattern hits memory limits, request timeouts, or hosting throttles. With Amazon S3 Storage, the customer’s browser is redirected straight to the cloud — your PHP process doesn’t touch the file at all. A 2 GB video, a 10 GB photo archive, a multi-gigabyte software bundle all download with the same reliability as a 5 MB PDF.
max_execution_time and memory-limit failuresEvery download is served through a cryptographically signed URL that expires after a configurable period. Customers can’t share a link that lets others bypass purchase. Bots can’t scrape a product page for direct file links — there are no direct file links to scrape. The default expiry suits most stores; raise or lower it per your fraud tolerance.
When you add a new downloadable file or import a batch, the extension uploads the file to your bucket through Action Scheduler — WooCommerce’s own background job runner. Uploads happen asynchronously so your admin stays responsive, and the queue survives staging environments, HTTP Basic Auth, and restrictive hosting that breaks traditional WordPress background processing. Once a file is in the bucket, its WooCommerce download entry points to the cloud automatically.
Not every download lives inside a WooCommerce product. Use the [amazon_s3] shortcode to drop a secure download link into any post, page, email, or block-editor template. The shortcode generates a signed URL on render, respects your bucket and region settings, and supports per-shortcode overrides. A built-in modal in the product editor builds correctly formatted shortcodes for you.
Cloudflare R2 isn’t the only S3-compatible cloud out there. Amazon S3 Storage for WooCommerce includes experimental support for Wasabi, Backblaze B2, DigitalOcean Spaces, and any other S3-compatible endpoint. Choose “User defined” in the cloud service provider setting, add a short snippet to point the SDK at your provider’s endpoint, and you’re delivering files through your storage of choice. Kestrel support can help you wire it up.
Amazon S3 Storage extends WooCommerce’s downloadable-products system, it doesn’t replace it.
Customers still see the same My Account download page, the same download-limit and expiry behavior, the same email links. Variable products, grouped products, and subscription products with downloadable files all work without configuration changes. Approved Download Directories is handled automatically — the extension reconciles WooCommerce’s static-path validation with the dynamic nature of signed URLs.
Running a membership site or selling gated digital content? Two paths work cleanly.
Either way, Amazon S3 Storage delivers the files. Members get fast, signed downloads of large gated content — sample packs, course videos, member-only PDFs — without your origin server doing the heavy lifting.
Whether you’re selling:
You’ll get fast, scalable delivery backed by Amazon S3 or Cloudflare R2 and a smoother experience for your customers.
This extension is built for any merchant delivering digital goods at scale. Instead of relying on your hosting server to handle downloads, it shifts the heavy lifting to global cloud infrastructure — keeping customers happy and stores reliable.
Built and supported by the team at:
Only if you want to use Amazon S3. If you'd rather use Cloudflare R2 — which has no egress fees — you'll need a Cloudflare account with R2 enabled instead. Alternatively, you can use a provider like Wasabi or Backblaze, as long as they support the S3 API.
Amazon S3 and Cloudflare R2 are supported natively, with first-class settings in the extension. Wasabi, Backblaze B2, DigitalOcean Spaces, and other S3-compatible providers are supported experimentally through a configuration snippet — support can walk you through it if needed. You don't need both AWS and R2; pick whichever fits your goals.
There's no practical ceiling imposed by the extension itself — Amazon S3 supports objects up to 5 TB, and Cloudflare R2 up to 4.995 TB. WooCommerce's built-in Force Download method tops out around 500 MB on most shared hosts; Amazon S3 Storage replaces that streaming path with a direct cloud redirect, so the host's PHP limits stop mattering.
Every download is delivered through a signed URL that expires after a configurable period. Customers can't share a working link with others past the expiry, and the underlying file path is never exposed. WooCommerce's existing download permissions, download count limits, and expiry dates continue to apply on top of the signed URL layer.
Yes — uploads run through Action Scheduler in the background, so you can offload existing products without any issue. Add an existing file to a product and let it queue. This also allows files to be uploaded from behind basic auth and staging sites without issue.
Yes. Subscription products with downloadable files deliver through S3 or R2 the same way one-time products do. Memberships' access gating runs before the signed URL is generated, so members get their files and non-members don't. The three extensions complement each other when you're building a digital subscription or membership store.
Categories
Extension information
Quality Checks
Compatibility
Countries