# Where to host a WebSocket app in Europe in 2026

Last updated: 2026-11-10

Most European platforms accept WebSockets, so the real differences are idle timeouts, sticky routing and how instances scale. **Eurobase** suits a WebSocket app on one or a few instances at a flat €10 or €20 a month, **Scalingo** and **Upsun** document sticky routing for apps spread over several containers, **Scaleway Serverless Containers** lets you set the request timeout yourself, and **Sliplane** or a **Hetzner** server suit a socket server you run and tune yourself.

## WebSocket hosting at a glance

| Platform | WebSockets | Documented connection timeout | Same client, same instance | Starts at |
|---|---|---|---|---|
| Eurobase | Inbound, on containers and V8 isolates | Containers close a socket after 60 s without data | Not documented | Free, then €10 a month + VAT |
| Scalingo | On by default | Data at least every 59 s | Sticky Sessions by cookie | €7.20 a month excl. VAT |
| Upsun | On a route with cache and request buffering off | Not documented | Sticky routing by client IP | €9 per project a month plus resources |
| Clever Cloud | Supported, per its own blog | Not documented | Sticky sessions setting | Billed by the second |
| Scaleway Serverless Containers | Listed as a supported request type | Request duration you set, 10 s to 60 minutes | Not documented | Free tier, then billed by use |
| Sliplane | Works through its TLS, per its Soketi guide | Not documented | One server per service | €9 for 1 vCPU and 1 GB, excl. VAT |
| Hetzner | Whatever your server runs | You decide | You configure it | €5.49 a month excl. VAT, if available to order |

Prices are from each provider's own page, checked on 9 and 10 November 2026.

## What to check before you deploy a socket server

- **The idle timeout.** Most proxies close a connection that carries no data for about a minute. Send a ping or heartbeat more often than the host's limit, and make the client reconnect on its own.
- **Sticky routing.** Socket.IO falls back to HTTP long-polling, and its docs say every request from one client must then reach the same server. With more than one instance you need sticky sessions or a WebSocket-only transport.
- **Broadcasting across instances.** A message sent on instance A doesn't reach clients on instance B unless something relays it, usually a Redis adapter. Check where that Redis can run.
- **Scale to zero and releases.** A stopped or replaced instance drops every open socket, so the client should reconnect on its own, waiting a little longer after each failed try.

## 1. Eurobase

Eurobase builds your repository from GitHub, GitLab, Codeberg, Forgejo or Gitea and hosts it on European infrastructure run by Scaleway, a French provider. The company is registered in Warsaw, Poland. A Node.js, Python or Go server runs as a container: once a WebSocket or event stream has started, it has no time limit, but it closes after 60 s without data from your app, and a Eurobase update can also end it, so clients should reconnect. Containers scale to zero when idle, and a container app runs at most 1 instance on Free, 2 on Starter and 3 on Pro.

Apps on V8 isolates, such as Hono, also accept inbound WebSockets. There, a socket counts as one request for its whole life, with 30 s of CPU on paid plans and 50 ms plus a small reserve on Free. Outbound WebSockets from an isolate aren't supported, and there are no Durable Objects to coordinate sockets. See [Containers and static sites](/docs/containers) and [Workers](/docs/workers) for every limit.

- **Best for:** live dashboards, notifications or a small chat on one or two instances, at a known monthly price, deployed from Git or by a coding agent through the MCP server and CLI.
- **Price:** free to start; paid plans cost €10 or €20 a month + VAT and cover every project in the workspace. There are no usage charges today: work over a limit is refused, apps on V8 isolates and Functions stop until the monthly reset, and containers and static sites keep serving.
- **What it lacks:** documented sticky sessions, managed Redis for a Socket.IO adapter, Dockerfile builds and preview deployments. ISO 27001 and SOC 2 certification is still underway, so neither is held yet.

## 2. Scalingo

Scalingo, from Strasbourg, says WebSockets, server-sent events and long-running connections are available by default. Its router gives a new connection 30 s for a first response, then expects data at least every 59 s. Its Sticky Sessions feature pins each visitor to one web container with a cookie, and a deployment, restart or scaling change resets that cookie. Redis is sold as a managed add-on.

- **Best for:** a Socket.IO app on several containers with Redis on the same platform.
- **Price:** €7.20 a month excl. VAT for a 256 MB container, or €8.64 excl. VAT in its SecNumCloud region. The smallest Postgres, 512 MB and 10 GB, is also €7.20 a month excl. VAT. A 30-day free trial is included.
- **What it lacks:** scale to zero. Its pricing page says containers never sleep, and they're billed by the minute while they run.

## 3. Upsun

Upsun is the trading name of Platform.sh SAS, in Paris. A WebSocket route needs its cache disabled, because the router's caching requires buffering, and your app needs request buffering switched off too. A route can turn on sticky routing, which picks the instance from a hash of the client's IP address, so scaling up or down can move clients to other containers. Regions run on AWS, Azure, Google Cloud or OVHcloud, and the [regions page](https://docs.upsun.com/development/regions.html) names the provider for each.

- **Best for:** routing defined in config, with a European region you pick.
- **Price:** a €9 project fee and €10 per user each month, with resources billed per second on top.
- **What it lacks:** a published idle timeout for open sockets in its routes docs.

## 4. Clever Cloud

Clever Cloud is a French platform. A post on its own blog says WebSockets work with Node.js and Play 2 apps, and its application settings include sticky sessions through an `X-Clever-Cloud-Sticky-Id` cookie, off by default.

- **Best for:** a realtime app that wants Redis and Postgres add-ons in the same console.
- **Price:** resources are billed by the second up to a maximum you set, with free credits for new accounts.
- **What it lacks:** a documented idle timeout for long-lived connections.

## 5. Scaleway Serverless Containers

Serverless Containers come from Scaleway, the French cloud company. The FAQ lists WebSockets with HTTP, HTTP/2 and gRPC as request types a container can handle, and you choose HTTP/1.1 or HTTP/2 in the advanced options. The limits page sets the HTTP request duration between 10 s and 60 minutes, a concurrency target of 80 per instance and up to 200 instances. It runs images from a container registry, so you build and push them yourself.

- **Best for:** teams that build images in CI and want a timeout they control.
- **Price:** 400,000 GB-s of memory and 200,000 vCPU-s free each month, then €0.20 per 100,000 GB-s and €1 per 100,000 vCPU-s.

## 6. Sliplane

Sliplane, based in Berlin, runs Docker services on a server you rent from it. Its guide to self-hosting Soketi, a Pusher-compatible WebSocket server, shows WSS on port 443 with Sliplane handling TLS, so a socket server or your own app runs as a normal container.

- **Best for:** a Socket.IO or Soketi server next to its own Redis container, under one server price.
- **Price:** the Starter server with 1 vCPU and 1 GB is €9 excl. VAT.
- **What it lacks:** a free plan, and published proxy timeouts for open connections.

## 7. Hetzner

Hetzner is a German host that rents cloud servers. You pick the reverse proxy, its timeouts and how clients stick to a process, and you handle patching, TLS and failover.

- **Best for:** high connection counts on a budget, if you run Linux yourself.
- **Price:** the CPX02 is listed at €5.49 a month excl. VAT in Helsinki and €6.49 in Falkenstein or Nuremberg, but the cheapest plans showed as unavailable to order on 10 November 2026.
- **What it lacks:** any managed layer.

## How to choose

- **Live updates or a small chat, fixed budget:** Eurobase, with a heartbeat under 60 s.
- **Socket.IO across several containers with Redis beside it:** Scalingo or Clever Cloud.
- **Config-driven routing and a choice of cloud region:** Upsun.
- **Long sessions with a timeout you set:** Scaleway Serverless Containers.
- **Many sockets on one cheap machine:** Sliplane, or a Hetzner server you manage.

Related: [Node.js hosting in Europe](/i/nodejs-hosting-europe), [NestJS hosting in Europe](/i/nestjs-hosting-europe), [Go hosting in Europe](/i/go-hosting-europe) and, for a Redis adapter, [Upstash alternatives in Europe](/i/upstash-alternatives-europe).

## Frequently asked questions

### Why does my WebSocket disconnect after about a minute?

The platform's proxy closes connections that carry no data. Eurobase containers allow 60 s of silence and Scalingo expects data every 59 s. Send a ping every 20 to 30 s and reconnect on close.

### Do I need sticky sessions for Socket.IO?

Yes, when you run more than one instance and keep long-polling enabled, according to Socket.IO's own docs. Scalingo, Upsun and Clever Cloud document sticky routing. The alternative is to force the WebSocket transport on the client.

### Can I run WebSockets on a serverless platform?

Some, yes. Scaleway Serverless Containers lists WebSockets as supported, and Eurobase accepts them on containers and V8 isolates. When an idle instance stops, its sockets go with it.

### How do I send a message to clients connected to different instances?

Use a pub/sub layer, usually Redis with the Socket.IO Redis adapter. Scalingo and Clever Cloud sell Redis next to the app; on Eurobase, point the adapter at a Redis hosted elsewhere.

## Sources

- [Scalingo routing and timeouts](https://doc.scalingo.com/platform/internals/routing), [Scalingo Sticky Sessions](https://doc.scalingo.com/platform/app/sticky-sessions), [Socket.IO and Express on Scalingo](https://doc.scalingo.com/languages/nodejs/websocket-web-same-port) and [Scalingo pricing](https://scalingo.com/pricing)
- [Upsun routes](https://developer.upsun.com/docs/routes), [Upsun regions](https://docs.upsun.com/development/regions.html) and [Upsun pricing](https://upsun.com/pricing/)
- [Clever Cloud application settings](https://www.clever.cloud/developers/doc/manage/), [Clever Cloud on WebSockets](https://www.clever.cloud/blog/features/2013/03/11/what-about-websockets-on-the-cloud/) and [Clever Cloud pricing](https://www.clever.cloud/pricing/)
- [Scaleway Serverless Containers FAQ](https://www.scaleway.com/en/docs/serverless-containers/faq/), [Scaleway Serverless Containers limits](https://www.scaleway.com/en/docs/serverless-containers/reference-content/containers-limitations/) and [Scaleway serverless pricing](https://www.scaleway.com/en/pricing/serverless/)
- [Sliplane Soketi guide](https://sliplane.io/blog/self-hosting-soketi-the-easy-way) and [Sliplane pricing](https://sliplane.io/pricing)
- [Hetzner Cloud](https://www.hetzner.com/cloud/)
- [Socket.IO: using multiple nodes](https://socket.io/docs/v4/using-multiple-nodes/)
- [Eurobase containers and static sites](/docs/containers), [Eurobase Workers](/docs/workers), [Plans and limits](/docs/plans), [Eurobase pricing](/pricing) and [Eurobase subprocessors](/legal/subprocessors)
