EU S3-Compatible Object Storage, Zero Egress Fees
Store files, images, and backups. S3-compatible — use the tools you already know.
Runsite Object Storage is S3-compatible storage for files, images, videos, and backups. It works with the AWS SDK, boto3, and any S3 client: point the endpoint at Runsite, use your access keys, and your existing code runs unchanged.
Egress is free. There are no charges for downloads, uploads, or data transfer of any kind, so you pay only for the gigabytes you store, billed at €0.025 per GB each month after a 5 GB free tier. That removes the bandwidth bill that makes serving images and media expensive on metered object storage.
All objects sit inside the European Union, encrypted at rest with AES-256, with a signed GDPR Data Processing Agreement included. Public buckets are served through a global CDN, while private files use time-limited presigned URLs so you can share access without handing out credentials. It is a natural home for PostgreSQL backups, user uploads from your web services, and build assets from your static sites.
Everything You Need from Object Storage
Built-in tools and capabilities to deploy and manage with confidence.
Bucket Management
Create and manage storage buckets with public or private access. Organize files with folder-like prefixes and metadata tags.
Access Keys & Permissions
Generate access keys with granular permissions: read, write, delete, or full admin. Rotate keys without downtime.
Presigned URLs
Generate time-limited presigned URLs for secure file sharing and direct client-side uploads without exposing credentials.
Usage Monitoring
Track storage usage, bandwidth consumption, and request counts in real time. Set alerts for usage thresholds.
CDN Integration
Serve public bucket files through Runsite's global CDN for fast asset delivery. Automatic cache headers for static content.
Encryption at Rest
All objects encrypted at rest using AES-256. TLS encryption for all data in transit. CORS configuration support.
Connect with any S3 SDK
Runsite's S3-compatible API works with existing AWS SDKs and tools — no code changes needed.
Create a Bucket & Access Key
Create a storage bucket from the dashboard with public or private access. Generate an access key pair with read, write, or admin permissions.
Point Your SDK to Runsite
Use the AWS SDK, boto3, or any S3-compatible client. Set the endpoint URL to your Runsite storage endpoint and use your Runsite access keys — no other configuration needed.
Upload & Organize Files
Upload files using standard S3 PutObject calls. Organize with folder-like prefixes (e.g. uploads/2026/photo.jpg). Use multipart upload for files over 100 MB.
Serve via CDN or Presigned URLs
Public buckets are served through Runsite's global CDN automatically. For private files, generate time-limited presigned URLs for secure sharing without exposing credentials.
Get Started in Minutes
Simple integration with your existing tools and workflows.
import { S3Client, PutObjectCommand } from '@aws-sdk/client-s3';
const s3 = new S3Client({
endpoint: process.env.S3_ENDPOINT,
credentials: {
accessKeyId: process.env.S3_ACCESS_KEY,
secretAccessKey: process.env.S3_SECRET_KEY,
},
});
await s3.send(new PutObjectCommand({
Bucket: 'my-bucket',
Key: 'uploads/photo.jpg',
Body: fileBuffer,
}));What You Can Store
Common scenarios where this service shines.
Media Storage
Store user-uploaded images, videos, and documents with automatic content-type detection and CDN delivery.
Database Backups
Store PostgreSQL and Redis backups in object storage with lifecycle policies for automatic cleanup.
Static Assets
Serve JavaScript bundles, CSS files, and fonts from S3 with CDN caching for fast global delivery.
Data Archival
Archive logs, analytics data, and compliance records with cost-effective long-term storage.
EU Object Storage, GDPR-Ready
Hosted in Frankfurt, Germany — your data stays under EU jurisdiction.
Every object you upload is stored in Runsite's Frankfurt, Germany region and encrypted at rest with AES-256. Files are not replicated to non-EU regions, so media, user uploads, and backups stay inside EU borders by default.
Every account is GDPR-compliant by default and includes a signed Data Processing Agreement at no extra cost and with no sales call. You can review how we handle data in our Privacy Policy and DPA terms. That makes Runsite a fit when you handle EU customer data or fall under the GDPR or the EU Digital Services Act.
Simple, transparent pricing
Pay only for the resources you actually use. Switch between monthly and hourly to see what you'll spend.
Pay-as-you-go
€0.025/GB/mo
- Pay only for what you use
- 100 GB ≈ €2.50/mo
- 500 GB ≈ €12.50/mo
- 1 TB ≈ €25/mo · 5 TB ≈ €125/mo
Frequently Asked Questions
Common questions about this service.
Yes. Runsite's object storage is fully S3-compatible. You can use the AWS SDK, boto3, aws-cli, or any S3-compatible client library. Just point the endpoint to your Runsite storage URL and use your Runsite access keys.
Individual objects can be up to 5 TB in size. For files larger than 100 MB, we recommend using multipart uploads for better reliability and performance. The AWS SDK handles multipart uploads automatically.
Yes. Set a bucket to public access and files are served directly via URL. Public buckets are automatically integrated with Runsite's CDN for fast global delivery. Private buckets require presigned URLs or access key authentication.
It isn't. Egress is free — there are no charges for downloads, uploads, or data transfer of any kind. You pay only for the storage you use; bandwidth is never metered or billed.
You Might Also Need
Services that work great together.
Web Services
Push your code, get a live URL. Any language, any framework — we handle the rest.
Learn morePostgreSQL
Managed PostgreSQL. Daily backups, one-click restore. Just connect and start querying.
Learn moreStatic Sites
Deploy static sites and JAMstack apps. Push your code, get a fast site with SSL and your own domain.
Learn moreYour app deserves to be online
Free to start. Deploy in under a minute. No credit card needed.