The Cloudflare Tunnel alternative made for development
Cloudflare Tunnel connects servers to Cloudflare's network, and its Quick Tunnels give you a throwaway URL for a local port. Expose is built for the development loop instead: a stable URL without moving a domain to Cloudflare, and a dashboard that shows and replays every webhook.
curl -fsSL https://expose.dev/install.sh | sh
irm https://expose.dev/install.ps1 | iex
Expose and Cloudflare Tunnel side by side
| Feature | Expose | Cloudflare Tunnel |
|---|---|---|
| Quick start without an account | The first share opens the browser to create a free account. | Quick Tunnels need no account or domain and give you a random trycloudflare.com URL. |
| Limits of the free tunnel | A free account with random URLs on one server in Germany and a time limit per connection. | Quick Tunnels allow 200 in-flight requests, don't support Server-Sent Events and have no uptime guarantee. |
| The same URL every time | Reserved subdomains and your own domain in Pro, $79 a year per user. | A named tunnel, which needs a Cloudflare account and a domain on Cloudflare. |
| Inspecting and replaying requests | A dashboard on localhost:4040 with every request, replay, and replay with changes. | Not part of cloudflared. |
| Coding agents | An MCP server that lets your agent read the requests that reached the tunnel. | Not part of cloudflared. |
From the Expose pricing and Cloudflare's Tunnel docs on November 11, 2026. "Not stated" means we didn't find it there.
Your Cloudflare Tunnel commands in Expose
| Task | Cloudflare Tunnel | Expose |
|---|---|---|
| Share a local port | cloudflared tunnel --url http://localhost:3000 | expose share http://localhost:3000 |
| Keep the same URL | Create a named tunnel and a DNS record | expose share http://localhost:3000 --subdomain=my-app |
More options in the sharing docs.
When Cloudflare Tunnel fits better
If your domain is already on Cloudflare and you want to put a server or an internal app behind Cloudflare Access for the long run, a named Cloudflare Tunnel is the right tool. A Quick Tunnel is also fine when you need a URL for five minutes, don't care what it is, and don't need to see the requests.
Trying Expose takes a minute
- 1. Install Expose with the command above.
- 2. Run
expose share http://localhost:3000. The first time, it opens the browser to create a free account. - 3. Open
http://127.0.0.1:4040to see and replay every request.
Questions
Do I need a domain to get a stable URL with Expose?
No. Expose Pro lets you reserve a subdomain on an Expose domain, so the URL stays the same without any DNS setup. You can also bring your own domain with a single CNAME record, wherever it is hosted.
Can I see the webhooks that came through a Cloudflare Tunnel?
cloudflared forwards requests but has no request inspector. Expose shows every request and response in its dashboard on http://127.0.0.1:4040 and can replay a webhook, with changes, without triggering it again.
Is Expose free like Cloudflare Quick Tunnels?
Yes, with a free account. The free plan shares sites with random URLs on our server in Germany, with a time limit per connection and without a warning page.