Public WebTransport echo servers: history, status and alternatives
What a WebTransport echo server is, what happened to the public one on webtransport.day, and a checked list of other public and open-source test servers.
WebTransport Day
Published
Last updated:
Facts checked:
5 min read
- Updated Oct 31, 2026
- ✓ Facts checked Oct 28, 2026
- Sources: W3C, IETF, MDN
Key facts (checked October 28, 2026)
- Old service
- No longer running on this domain
- First seen
- Announced in July 2022 on the Chromium web-transport-dev group
- Old homepage
- Archived by the Wayback Machine from 14 July 2022 to 11 May 2026
- Documented alternatives
- W3C sample hosts and echo.semantic-ui.com
- Reachability
- Not tested from this site; check with the tester
On this page
- What is a WebTransport echo server?
- How does an echo server work?
- What was the public echo server on webtransport.day?
- Which public WebTransport echo servers exist now?
- Servers you run yourself
- What about Media over QUIC relays?
- Why can’t this site run the echo server again?
- How do I know if a public echo server is up?
What is a WebTransport echo server?
A WebTransport echo server is a small server that accepts a WebTransport session and sends back what the client sent. It is the “hello world” test target for the protocol. If an echo round trip works, DNS, UDP reachability, QUIC, HTTP/3, the certificate, the origin check and your client code all work.
Because WebTransport offers two kinds of delivery, a useful echo server returns both:
- Stream data. The client opens a bidirectional stream, writes bytes, and the server writes the same bytes back on that stream.
- Datagrams. The client sends an unreliable datagram and the server sends one back. Datagrams are not retransmitted (RFC 9221), so a reply can be lost.
Text version
- The browser sends "hello" to the server on a stream (blue) or as a datagram (amber).
- The echo server sends the same bytes back (teal-green).
- The browser shows the echo. If it arrives, DNS, UDP, QUIC, HTTP/3, the certificate and the origin check all worked.
How does an echo server work?
A browser opens a connection with new WebTransport(url), as defined by the W3C WebTransport specification and documented on MDN. The URL must use https, and the server must speak HTTP/3 over QUIC (UDP) using the session setup in the IETF WebTransport over HTTP/3 draft, which is still a draft. The server accepts the session, then reads from the streams and datagrams the client opens and writes data back. The what is WebTransport guide explains the handshake; the WebTransport tester shows the round trip in a browser.
What was the public echo server on webtransport.day?
The domain previously hosted a free public WebTransport echo server. It was announced in July 2022 in a thread titled “A public WebTransport Echo Server” on the Chromium web-transport-dev group, as a way for web developers to try WebTransport from the browser without deploying a server of their own. That thread is the original announcement and we credit it as such. We say nothing about the people behind the service beyond what the thread says.
What the sources show, in order:
- July 2022. The announcement thread above. The Wayback Machine has a copy of the homepage from 14 July 2022, the earliest we found.
- 2022 to 2026. The homepage was a browser test page. An archived copy from 28 March 2023 and one from 10 May 2025 show it described as a tool to connect to an arbitrary WebTransport server, with the endpoint
https://echo.webtransport.day. - Documentation links. Chrome for Developers states that “a community-maintained echo server is available at webtransport.day” on its WebTransport page. The Rust
yew-webtransportdemo describes itself as a port of the site’s client page. - A second test page. An archived copy of
/serverlessfrom 8 February 2023 shows a different test page, pointed athttps://usa.echo.webtransport.day/serverless. See what that URL holds now. - June and July 2025. In the same Chromium thread, a user reported that
echo.webtransport.dayreturnedERR_NAME_NOT_RESOLVED, and a reply in July 2025 said the site no longer worked. - May 2026. The Wayback Machine holds a copy of the homepage dated 11 May 2026. The homepage copy therefore stayed online after those reports that the echo endpoint had stopped answering. We do not know why.
The Chrome documentation page still linked to the domain when we opened it on 2026-10-30.
Which public WebTransport echo servers exist now?
We list a server only if we found documentation for it and opened that documentation on 2026-10-28. We cannot open QUIC connections from this site’s build, so “documented” never means “reachable right now”. Test any of them with the browser tester. Whether a server accepts connections from this site’s origin is up to its operator.
| Server | WebTransport endpoint | What it does | Source and notes |
|---|---|---|---|
| W3C WebTransport samples, Chicago | wt-ord.akaleapi.net/echo/ (client page) | Echo sample from the W3C WebTransport repository, with a browser client | Listed in the W3C repository README. The page answered over HTTPS on 2026-10-28; the QUIC endpoint was not tested. Operator not stated. |
| W3C WebTransport samples, Amsterdam | wt-ams.akaleapi.net/echo/ (client page) | Same sample, second location | Same source and caveats. The page notes it needs a recent Chromium. |
| echo.semantic-ui.com | https://echo.semantic-ui.com/echo | Echoes datagrams and streams, with a test client | Run by Jack Lukic per its page. Stated limits: 1 MiB and 120 seconds per session, 4 sessions per address. Source is MIT-licensed. |
| Server | Source (checked 2026-10-28) | Check from my browser |
|---|---|---|
| W3C WebTransport samples, Chicago Listed in the W3C repository README. The WebTransport endpoint path is not documented there, so open the client page instead. | Documented here | No documented WebTransport URL to check. Use the client page. |
| W3C WebTransport samples, Amsterdam Same sample, second location. The WebTransport endpoint path is not documented, so open the client page instead. | Documented here | No documented WebTransport URL to check. Use the client page. |
| echo.semantic-ui.com Its page states limits of 1 MiB and 120 seconds per session and 4 sessions per address. | Documented here | Not checked yet. |
A check opens a session from your browser, sends one test message on a stream and closes. The result describes only that attempt from your network and browser at that moment; it says nothing about the server's uptime. Whether a server accepts this site's origin is up to its operator. Nothing is sent to this site or stored.
Try echo.semantic-ui.com in the tester. The link only fills in the URL; you still press Connect.
Servers you run yourself
If you need something dependable, run an echo server you control:
| Project | Language | What the README or source shows |
|---|---|---|
| W3C samples: echo | Python server, JS client | The same sample the hosted servers above run. |
| aioquic | Python | examples/demo.py has a WebTransport echo at /wt for datagrams and stream data. The server targets an older draft, so check it against your browser. |
| wtransport | Rust | The full example is a server and browser page, but it replies ACK instead of echoing the bytes. |
| webtransport-go | Go | Runnable client and server in example/. Its README does not say whether it echoes. |
| Chrome samples | Python (aioquic) | The server is not an echo: it answers on /counter with a count of the bytes received. |
See test WebTransport locally for steps and the client libraries guide for current release information.
What about Media over QUIC relays?
Media over QUIC (MoQ) relays are public WebTransport endpoints in some cases, but they are media relays, not echo servers. A connection to one proves the transport works, but you will not get your bytes back. Cloudflare’s MoQ relays, for example, are created through its dashboard and use tokens, so they are not open test endpoints.
Why can’t this site run the echo server again?
This site is static HTML served from Cloudflare’s network. A WebTransport server needs to accept QUIC connections on a UDP port and keep long-lived HTTP/3 sessions open. A static file host and an HTTP proxy do not do that, so nothing on this domain can answer a WebTransport handshake. The serverless and edge page explains what each platform documents about running WebTransport.
That is why the old echo hostnames redirect to this page, and why the browser tester is a client for servers you choose rather than a replacement server.
How do I know if a public echo server is up?
Open the tester, paste the server’s WebTransport URL, and press Connect. If the session opens, send a message on a stream and a datagram. If it fails, the handshake debugging guide lists the usual causes. Browsers deliberately report little about failures, so a failed connection is not proof that the server is down: it may only reject this page’s origin.
Frequently asked questions
Is there still a free public WebTransport echo server?
Yes, at least two are documented as of 2026-10-28: the W3C WebTransport samples hosts and echo.semantic-ui.com. We cannot test QUIC from this site, so availability is documented, not guaranteed. Paste the URL into the browser tester to check it from your own network.
Why does a server that works in one browser fail in another?
WebTransport is implemented in different browsers at different times, and servers target specific protocol draft versions. MDN lists Chrome 97, Firefox 114 and Safari 26.4 as the first versions with the API; a server built for an older draft may not work with newer clients.
Can I use someone else's public echo server in production tests?
Treat public echo servers as a convenience for manual checks. Their operators may rate-limit or remove them. For automated tests, run your own echo server locally or in CI.
Sources
Facts on this page were last checked against these sources on October 28, 2026.
- W3C: WebTransport specification
- MDN: WebTransport API
- IETF draft-ietf-webtrans-http3: WebTransport over HTTP/3
- RFC 9114: HTTP/3
- Chromium web-transport-dev: "A public WebTransport Echo Server" (July 2022 announcement and later replies)
- Chrome for Developers: How to use WebTransport
- Wayback Machine: webtransport.day homepage, earliest copy found (14 July 2022)
- Wayback Machine: webtransport.day homepage (28 March 2023)
- Wayback Machine: webtransport.day homepage (10 May 2025)
- Wayback Machine: webtransport.day homepage, latest copy found (11 May 2026)
- Wayback Machine: webtransport.day/serverless (8 February 2023)
- W3C WebTransport repository README (list of hosted samples)
- W3C WebTransport samples: echo (source)
- echo.semantic-ui.com
- jlukic/semantic-echo (source, MIT)
- Google Chrome samples: WebTransport client and server
- aioquic (examples/demo.py, http3_server.py)
- BiagioFesta/wtransport examples
- security-union/yew-webtransport
Cite this page
- Title
- Public WebTransport echo servers: history, status and alternatives
- Author
- WebTransport Day (organization)
- URL
- https://webtransport.day/echo-server/
- Updated
WebTransport Day. "Public WebTransport echo servers: history, status and alternatives." Last updated October 31, 2026. https://webtransport.day/echo-server/
Related reading
How to test WebTransport locally with an example server
Run a local WebTransport server from the wtransport or webtransport-go examples, then connect from the browser, with a self-signed certificate hash.
Updated
WebTransport client and server libraries: what exists and its status
Verified WebTransport libraries for Rust, Go, Python, Node.js, .NET and Deno, with licence, latest release and the status caveats each project states.
Updated
Debugging WebTransport handshake errors: a practical checklist
Why a WebTransport connection fails and what to check: certificates, serverCertificateHashes, HTTP/3 support, UDP, origin and path, per the spec.
Updated