# Static Sites — Deploy JAMstack Apps in the EU

> Deploy static sites and JAMstack apps on EU infrastructure — Next.js, Astro, Hugo, Vite. Automatic builds, global CDN, preview URLs, free SSL.

1. [Home](/)
2. [Services](/services)
3. Static Sites

Compute EU · Germany

# Deploy Static Sites & JAMstack Apps, Hosted in the EU

Next.js, Astro, Hugo, Vite — any generator that writes static files. Automatic builds, a global CDN, free SSL, and your own domain.

[Start with €5 credit](https://dashboard.runsite.app/login)[Read the docs](https://docs.runsite.app/services/static-sites/)

Build Time

\~20 seconds

CDN Locations

10+ regions

Bandwidth

100 GB/mo

bash — build

 10 edges

 git push origin main

 astro build ................... 12.4s

 248 pages · 6.1 MB · fingerprinted

 purging cache, pushing to 10 regions

 deployed in 19s · TTFB 38ms

 https://docs-9b2.runsite.app 

Build output and origin files stored in Germany

Runtimes

Next.js · Gatsby · Hugo · Vite · Astro · Nuxt · SvelteKit · Remix · 11ty · Jekyll

Overview

Runsite Static Sites deploys pre-built static sites and JAMstack apps from Git. Push your code, Runsite runs your build, fingerprints the output for long-term caching, and serves it from a global CDN with automatic SSL on your own domain.

Builds and origin storage stay inside the European Union, so your content and build artifacts never leave EU borders. A signed GDPR Data Processing Agreement is part of every plan.

It works with Next.js static export, Astro, Hugo, Vite, SvelteKit, and any generator that writes static files to a publish directory. Every pull request gets its own preview URL to check before you merge. When a project needs server-side rendering or a backend process, deploy it as a [Web Service](/services/web-services) instead, and keep user uploads or media in [S3-compatible object storage](/services/s3-storage). Static sites are not billed at all: unlimited sites with 100 GB of bandwidth a month, no plan and no hourly charge.

Last reviewed: September 2026

At a glance

Build Time

\~20 seconds

CDN Locations

10+ regions

Bandwidth

100 GB/mo

SSL

Automatic

Deploys

Unlimited

Preview URLs

Per PR

Hosted in the EU · Germany

[Start with €5 credit](https://dashboard.runsite.app/login)

Features

## Everything to Deploy Static Sites

Built-in tools and capabilities to deploy and manage with confidence.

### Instant Builds

Optimized build pipeline with Docker layer caching reduces build times by up to 40%. Incremental builds for supported frameworks.

Docker layer caching means an unchanged dependency tree is not reinstalled, so most builds finish in about twenty seconds. Static sites are not billed at all, which means the build minutes do not draw on your balance or on the starting credit either.

### Global CDN

Assets served from edge locations worldwide for sub-100ms load times. Automatic cache invalidation on every deploy.

Files are served from edge locations rather than from Germany, so a visitor in Sydney gets the asset from nearby. The cache is invalidated on each deploy, which is why a stale page after a release is nearly always a browser or service-worker cache rather than the CDN.

### Preview Deploys

Every pull request gets a unique preview URL. Share with your team for visual review before merging to production.

Each pull request gets a stable URL that updates as you push to the branch, so the link you paste into a review thread stays correct. Previews are indexable only if you make them so; they carry no traffic and no production domain until you merge.

### Custom Domains & SSL

Map your own domain with automatic SSL certificate provisioning and renewal via Let's Encrypt. Supports apex and wildcard domains.

Certificates are issued and renewed through Let's Encrypt, which means a 90-day lifetime handled on a schedule rather than a setting you configure once. Apex and wildcard domains both work, and the renewal is the job that quietly breaks on servers you run yourself.

### Build Configuration

Specify publish directory, build commands, and environment variables. Framework auto-detection handles the defaults.

Publish directory, build command and environment variables are set per site, and detection fills in the defaults for the common generators. Variables are applied at build time for a static site, so changing one means a rebuild rather than a restart.

### Headers & Redirects

Configure custom response headers, URL redirects, and rewrite rules for SEO, security, and single-page app routing.

Response headers, redirects and rewrites are declared as rules rather than handled in application code, because there is no application process to handle them. Single-page apps need the rewrite to the index document here; without it, deep links return 404 on a hard refresh.

CDN Pipeline

## Build, cache, deliver globally

Static sites are built once and served from edge locations worldwide for blazing-fast load times.

1

### Build Triggered on Push

Runsite detects your framework, installs dependencies, and runs your build command. Docker layer caching reduces repeat build times by up to 40%.

2

### Assets Optimized & Hashed

Output files are fingerprinted with content hashes for infinite caching. HTML files get short cache TTLs so visitors always see fresh content.

3

### Distributed to Edge Locations

Built assets are pushed to 10+ edge locations worldwide. Every deploy triggers automatic cache invalidation across all nodes.

4

### Served with SSL & Custom Headers

Requests are routed to the nearest edge location. Custom response headers, redirects, and rewrite rules are applied at the edge layer.

Code

## Get Started in Minutes

Simple integration with your existing tools and workflows.

next.js-static-export.js

```
// next.config.js
module.exports = {
  output: 'export',
  images: { unoptimized: true },
}
```

Use Cases

## What Teams Build on Static Sites

Common scenarios where this service shines.

### Marketing Sites

Launch landing pages and marketing websites with blazing-fast load times and zero server management.

### Documentation

Deploy Docusaurus, VitePress, or GitBook documentation with auto-deploy on every content update.

### Portfolio & Blog

Deploy Gatsby, Astro, or Hugo blogs and portfolios with custom domains and global CDN distribution.

### E-commerce Storefronts

Build headless e-commerce frontends with frameworks like Next.js connected to any CMS or backend API.

EU-Sovereign

## Your Site Data, Stored in the EU

Hosted in Germany — your data stays under EU jurisdiction.

Your build pipeline runs and your origin files are stored in Runsite's German region. Public assets are cached at edge locations worldwide for speed, but the source of truth — your build output and configuration — stays inside the EU.

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](/privacy). That makes Runsite a fit when you handle EU customer data or fall under the GDPR or the EU Digital Services Act.

EU data residencyGDPR-readySigned DPA on every plan

Pricing

## Simple, transparent pricing

Pay only for the resources you actually use. Switch between monthly and hourly to see what you'll spend.

Runsite is in Public Beta

Every service listed here is live, and paid plans bill exactly as shown. Beta means the platform is young. Features still change, and parts of the roadmap are not built yet.

### Long-running web servers

·Apps · APIs · Backends

Push your repo, Runsite builds and serves. Auto-scale, zero-downtime rolling deploys, free SSL.

Web Services

### Nano

€3/mo

≈ €0.0041/hour, billed hourly

vCPU

0.1

RAM

256 MB

Disk

1 GB

Bandwidth

100 GB

[Choose Nano](https://dashboard.runsite.app/login)

Web Services

### Starter

€5/mo

≈ €0.0068/hour, billed hourly

vCPU

0.5

RAM

512 MB

Disk

5 GB

Bandwidth

1 TB

[Choose Starter](https://dashboard.runsite.app/login)

Web Services

### Standard

Popular

€12/mo

≈ €0.0164/hour, billed hourly

vCPU

1

RAM

1 GB

Disk

10 GB

Bandwidth

2 TB

[Choose Standard](https://dashboard.runsite.app/login)

Web Services

### Pro

€25/mo

≈ €0.0342/hour, billed hourly

vCPU

1

RAM

2 GB

Disk

10 GB

Bandwidth

5 TB

[Choose Pro](https://dashboard.runsite.app/login)

Web Services

### Pro Plus

€50/mo

≈ €0.0685/hour, billed hourly

vCPU

2

RAM

4 GB

Disk

20 GB

Bandwidth

10 TB

[Choose Pro Plus](https://dashboard.runsite.app/login)

Web Services

### Business

€95/mo

≈ €0.1301/hour, billed hourly

vCPU

4

RAM

8 GB

Disk

20 GB

Bandwidth

20 TB

[Choose Business](https://dashboard.runsite.app/login)

Web Services

### Business Plus

€180/mo

≈ €0.2466/hour, billed hourly

vCPU

8

RAM

16 GB

Disk

30 GB

Bandwidth

30 TB

[Choose Business Plus](https://dashboard.runsite.app/login)

Nano is the entry plan: the same 0.1 vCPU / 256 MB as before, now €3/mo and covered by your €5 starting credit. Nano services draw on a 100 GB monthly egress pool, ship a noindex header, and sleep after 14 days with no traffic. Starter and above are always-on, indexable and unmetered on egress.

### JAMstack & static frontends

·Landing pages · Docs · Portfolios

Deploy Next.js, Astro, Vite, Hugo and friends to a global CDN. Auto-deploy from Git, preview on every PR, free SSL.

Static Sites

### Free

Popular

Free

Never billed · never draws on your balance

CDN

Global

Bandwidth

100 GB

Builds

\~20s

Sites

Unlimited

[Deploy for free](https://dashboard.runsite.app/login)

Static sites are not billed. No plan, no hourly charge, and they never draw on your balance or credit. Pay-as-you-go bandwidth above the included quota will be introduced after launch. We'll notify you before any change.

### Production-ready databases

·Managed · Backups · EU-sovereign

One-click PostgreSQL with daily backups, connection pooling, encrypted at rest, never leaves the EU.

PostgreSQL

### Nano

€3/mo

≈ €0.0041/hour, billed hourly

vCPU

0.1

RAM

256 MB

Storage

1 GB

Connections

25

[Choose Nano](https://dashboard.runsite.app/login)

PostgreSQL

### Starter

€5/mo

≈ €0.0068/hour, billed hourly

vCPU

0.5

RAM

1 GB

Storage

5 GB

Connections

50

[Choose Starter](https://dashboard.runsite.app/login)

PostgreSQL

### Standard

Popular

€14/mo

≈ €0.0192/hour, billed hourly

vCPU

1

RAM

2 GB

Storage

10 GB

Connections

100

[Choose Standard](https://dashboard.runsite.app/login)

PostgreSQL

### Pro

€35/mo

≈ €0.0479/hour, billed hourly

vCPU

2

RAM

4 GB

Storage

20 GB

Connections

200

[Choose Pro](https://dashboard.runsite.app/login)

PostgreSQL

### Pro Plus

€70/mo

≈ €0.0959/hour, billed hourly

vCPU

4

RAM

8 GB

Storage

50 GB

Connections

400

[Choose Pro Plus](https://dashboard.runsite.app/login)

PostgreSQL

### Business

€130/mo

≈ €0.1781/hour, billed hourly

vCPU

8

RAM

16 GB

Storage

100 GB

Connections

500

[Choose Business](https://dashboard.runsite.app/login)

Storage beyond the included quota: +€0.25/GB/mo. Daily encrypted backups included. Nano is the entry plan at €3/mo. There is no longer a 30-day free database. If your credit and balance run out the database stops with its volume intact; press Start after topping up and it comes straight back. Storage is reclaimed 7 days later and the final backup is kept for 12 months.

### Sub-ms in-memory store

·Cache · Sessions · Queues

Drop-in Redis 7+ compatible store. Pub/Sub, automatic failover, TLS, RDB + AOF persistence.

Redis-compatible

### Starter

€5/mo

≈ €0.0068/hour, billed hourly

Memory

256 MB

Connections

250

[Choose Starter](https://dashboard.runsite.app/login)

Redis-compatible

### Standard

Popular

€13/mo

≈ €0.0178/hour, billed hourly

Memory

1 GB

Connections

1,000

[Choose Standard](https://dashboard.runsite.app/login)

Redis-compatible

### Plus

€25/mo

≈ €0.0342/hour, billed hourly

Memory

2 GB

Connections

2,000

[Choose Plus](https://dashboard.runsite.app/login)

Redis-compatible

### Pro

€65/mo

≈ €0.0890/hour, billed hourly

Memory

5 GB

Connections

5,000

[Choose Pro](https://dashboard.runsite.app/login)

Redis-compatible

### Max

€125/mo

≈ €0.1712/hour, billed hourly

Memory

10 GB

Connections

10,000

[Choose Max](https://dashboard.runsite.app/login)

Redis starts at Starter. The 50 MB free instance is no longer offered. Every plan here includes RDB + AOF persistence, TLS and automatic failover, and is billed by the hour like everything else. A Starter instance runs for roughly a month on the €5 starting credit, if it is the only thing you have running.

Runsite hosts applications, not relays. VPN endpoints, proxies, VLESS / Xray / V2Ray and Shadowsocks nodes, and traffic tunnels of any kind are prohibited on every plan, paid ones included, and are blocked without notice or refund. See the Acceptable Use Policy in Section 4 of the Terms.

### Every plan, side by side

__Static Sites plans, with monthly and hourly prices in euro__
| Plan | CDN    | Bandwidth | Builds | Sites     | Per month | Per hour |
| ---- | ------ | --------- | ------ | --------- | --------- | -------- |
| Free | Global | 100 GB    | \~20s  | Unlimited | Free      | Free     |

[Compare all plans](/pricing)[Try the calculator](/pricing/calculator)

FAQ

## Frequently Asked Questions

Common questions about this service.

### What static site generators are supported?

Runsite supports all major static site generators and frameworks: Next.js (static export), Gatsby, Hugo, Vite, Astro, Nuxt, SvelteKit, Remix, 11ty, Jekyll, and any tool that outputs static HTML/CSS/JS to a publish directory.

### How is a static site different from a web service?

Static sites are pre-built at deploy time and served as static files via CDN, resulting in faster load times and lower cost. Web services run a server process (Node.js, Python, etc.) and handle dynamic requests. Choose static for content-focused sites and web services for dynamic applications.

### Can I use server-side rendering with static sites?

Static sites on Runsite serve pre-built files only. If you need server-side rendering (SSR), deploy as a Web Service instead. Frameworks like Next.js support both — use static export for static, or deploy as a web service for SSR.

### How does CDN caching work?

When you deploy, Runsite distributes your built assets to edge locations worldwide. Cache is automatically invalidated on every new deploy, so visitors always see the latest version. Assets with content hashes are cached indefinitely for optimal performance.

Guides

## Learn More About Static Sites

Hands-on articles from the Runsite blog.

[Deployment12 min readGit Push to Deploy: How Modern Web App Deployment Actually WorksWhat actually happens between git push and live traffic: build artifacts, health-gated releases, why a rollback isn't a rebuild, and the four things a deploy pipeline can't do for you.Read](/blog/git-push-to-deploy)[Deployment7 min readWhat Are Cold Starts — and Why Your Free-Tier App Keeps Falling AsleepCold starts make the first request to a sleeping app painfully slow. Here's why free hosting tiers spin down, what it costs you, and how to keep an app warm without paying for idle capacity.Read](/blog/cold-starts)[Compliance11 min readEU Hosting for Developers: Data Residency, GDPR, and DPAs in PracticeA customer asks where their data lives, or a deal stalls on a DPA request, and suddenly "we host in Europe" isn't a good enough answer. Here's what EU hosting actually means for developers: data residency, GDPR roles, DPAs, and how to build a stack that keeps data on EU soil.Read](/blog/eu-hosting-for-developers)

Related

## You Might Also Need

Services that work great together.

[Web ServicesNode.js, Python, Go, Ruby, Rust, or your own Dockerfile — Runsite builds it, runs it, and keeps it online on European infrastructure.Learn more](/services/web-services)[S3 Object StorageStore files, images, and backups. S3-compatible — use the tools you already know.Learn more](/services/s3-storage)[PostgreSQLManaged PostgreSQL. Daily backups, one-click restore. Just connect and start querying.Learn more](/services/postgresql)

## Your app deserves to be online

€5 of credit on signup. Deploy in under a minute. No credit card needed.

[Start deploying](https://dashboard.runsite.app/login)[View documentation](https://docs.runsite.app)

---

Source: https://runsite.app/services/static-sites
