Home / Egress and tunnels
Pinggy
pinggy.io/help/Tunnel (hosted, SSH)egress/pinggy-freeJSONcomparereport an errorprovider JSON
- Free allowance
- One 60-minute tunnel at unlimited data, no account
- Verdict
- caveatusable, with a named limit or an unprobed read path
- Cost
- free tier
- Identity
- anonymousno card, no phone
- Binding limit
- per-ip-shapingmeasured 4,847,616 of 10,485,760 bytes in 180 s, about 26.9 KiB/s, which caps a full month at about 69.8 GB (0.063 TiB)
- Evidence
- documented6 sources; a first-party page was read and the sentence quoted
- Freshness
- stale on 2026-11-23checked 2026-10-23 (live); stale on 2026-11-23
| Free tier | one 60-minute tunnel at unlimited data, no account unit unlimited; metered on wall-clock |
|---|
| Price | none stated |
|---|
| Limits | - retention-clamped 60 minutes per tunnel, stated in the SSH banner and on the help page source
- per-ip-shaping (binding) measured 4,847,616 of 10,485,760 bytes in 180 s, about 26.9 KiB/s, which caps a full month at about 69.8 GB (0.063 TiB)
|
|---|
| Binding | per-ip-shaping The 60-minute cap bounds each session and the measured 26.9 KiB/s bounds everything those sessions can carry: at that rate a whole month is about 69.8 GB, 0.063 TiB, so the rate is what fails and it fails by a factor of 16 rather than at a quota. |
|---|
| Identity | anonymous no account for the 60-minute tier; the SSH session is unauthenticated |
|---|
| Egress | no byte quota; measured 26.9 KiB/s on a 10 MiB object, which is 2.2 GiB/day at best |
|---|
| Per-object cap | not applicable: a stream rather than an object store |
|---|
| Interface | ssh ssh -p 443 -R0:127.0.0.1:PORT [address removed] |
|---|
| Tooling | OpenSSH |
|---|
| Composes with | the free outbound-only ingress for a host that cannot open a port, which is the sealed-sandbox shape. It composes with anything that speaks TCP and composes with nothing that needs throughput. |
|---|
| Reliability | the free hostname is a random subdomain that changes every session |
|---|
| Notes | 2026-10-23: the free tier carries UDP, not only SSH TCP. Pinggy documents 'ssh -p 443 -R0:localhost:51820 [address removed]' as the way to expose a self-hosted WireGuard server, and the free host form returns a public UDP port such as udp://rndnj-103-170-183-11.a.free.pinggy.online:43210, so wg_path is inside-udp. |
|---|
| Parsed numbers | - has-free-tier 1
- retention-clamped 60 minutes
- per-ip-shaping 26.9 KiB
|
|---|
Evidence 6
| date | source | what it proved |
|---|
| 2026-10-22 | probe: https://phqpq-103-139-152-1.run.pinggy-free.link/blob10m.bin | 200 with 4,847,616 of 10,485,760 bytes in 180 s, then the client timeout |
| 2026-10-22 | probe: https://phqpq-103-139-152-1.run.pinggy-free.link/small.txt | 200, 3 bytes in 1.1 s: the control path works, so the 10 MiB result is shaping |
| 2026-10-22 | pinggy.io/help/ | 'Your tunnel will expire in 60 minutes' and the -R0 form |
| 2026-10-23 | pinggy.io/docs/guides/wireguard/ | 'Pinggy's UDP tunnels solve this by relaying UDP datagrams from a public endpoint to your local WireGuard server, so peers anywhere in the world can complete the handshake'; the free form is '[address removed]' |
| 2026-10-23 | pinggy.io/docs/udp_tunnels/ | 'UDP tunnels cannot be created using SSH command'; 'Port allocation changes per connection. However, Pro users can reserve a persistent port' |
| 2026-10-23 | pinggy.io/help/ | 'Pinggy's free plan has a tunnel timeout of 60 minutes' |
More fields 4
| stale after days | 180 |
|---|
| bytes transit | yes |
|---|
| transit note | the SSH tunnel relays the origin's bytes at a measured 26.9 KiB/s |
|---|
| wg path | inside-udp |
|---|