olcRTC transport

olcRTC: VPN Traffic That Looks Like a Video Call

olcRTC is the fourth ProofKit transport. Instead of connecting your device to a VPN server, your app joins a video call on a major video-conferencing service, and the node sits in the same call. Your traffic travels inside the call, encrypted, so a network observer sees a video call.

WebRTC video callTCP + UDPStraight to the exitNeeds an olcRTC app
Looks like
Video call
Carries
TCP + UDP
Entry node
None
Speed
Lowest

01 /What olcRTC is

olcRTC moves data through WebRTC, the technology behind video calls in a browser. Each ProofKit node that offers olcRTC keeps a room open on one or more major video-conferencing services, with its olcRTC server in the room as a participant. Your app joins the same room and exchanges your traffic with the node inside the call, as its video stream or its data channel.

The traffic is encrypted with the key from your personal link before it enters the call, so the video service relays data it cannot read. The node then sends it to the internet from its own IP address, as it does for every other transport.

02 /Why it gets through

  • Your device never connects to the node, only to the video service, like any participant in a call. Filters aimed at VPN servers or foreign data centres find nothing to block unless they block the video service itself.
  • It works on allowlist networks. Where a network lets through only a short list of approved services, the big video-conferencing services are often on it.
  • It carries UDP as well as TCP, so messenger calls and online games work over it, with the added latency of the relay.
  • It needs no entry node. The video service takes that place, and olcRTC always runs straight to the exit node you connected to.

03 /What it costs

olcRTC is metered like every other transport: each user has a personal key, and the node counts that key's traffic into your session. You pay from your TON deposit in the escrow contract, and unused balance can be withdrawn. There is no separate olcRTC plan.

Until 20 November 2026 olcRTC costs what your route costs: the node's per-GB price plus the 20% network fee, locked when you connect. From 20 November 2026 it has a price of its own, one price per GB for the whole network whatever the exit or the route, with the 20% network fee included:

When (00:00 UTC)olcRTC, per GB
Until 20 November 2026The route's own price, as today
From 20 November 20260.0208 TON (about $0.03)
From 8 December 20260.0347 TON (about $0.05)
From 22 December 20260.0556 TON (about $0.08)

The dollar figures are approximate, at 1 TON = $1.44; you are charged in TON. The olcRTC price is read when the traffic moves, so it is never locked into your session. A rise is announced at least 30 days before it starts; a cut can start at once. olcRTC never passes through an entry node, so a 2-hop route adds nothing to it. Reality, Hysteria2 and XHTTP keep the node's price plus the fee, locked when you connect.

04 /Limits

  • It is the slowest transport. Traffic is limited to what a video call carries and passes through the video service's servers, which adds latency. It suits messaging, browsing and calls; large downloads are faster on Reality, Hysteria2 or XHTTP whenever those get through.
  • A node takes only a handful of olcRTC users at a time, because everyone in its room shares one call's bandwidth. When the room is full, your list has no olcRTC entry for that node.
  • It depends on the video services. If one is blocked or unreachable on your network, olcRTC over that service stops. A location reachable through more than one service appears once per service, so keep all of those entries.

05 /How to use olcRTC

olcRTC needs an app that implements it, because the app has to take part in a video call. Happ, Hiddify, V2RayNG and Streisand cannot. Ghostlane, an open-source client, can, and it runs Reality, Hysteria2 and XHTTP as well, so one app covers all four transports.

Ghostlane open source

One app for VLESS Reality, Hysteria2, XHTTP and olcRTC, on iPhone, iPad, Android, macOS, Windows and Linux.

Download on the App Store Get it on Google Play
  1. Install Ghostlane from the App Store, Google Play or its releases page.
  2. Connect to an exit node. Sign in to ProofKit with email or Telegram and connect to a node in the marketplace (how connecting works). olcRTC entries appear only for nodes you are connected to.
  3. Copy the list made for the app. In the dashboard, under Your app, choose Ghostlane and copy the URL. Leave the transports switch below it on All, or pick olcRTC to list only olcRTC entries, plus Reality for nodes without a free olcRTC seat.
  4. Add it in the app. In Ghostlane tap Add server list, choose Paste link or URI and paste the URL.
  5. Connect to an entry marked olcRTC. The app shows how full each room is. A full room cannot take you, so pick another entry or try again later.

The same list carries the node's other transports, so when Reality, Hysteria2 or XHTTP get through you switch to them in the same app. Ghostlane setup, step by step

// faq

Common questions

What is olcRTC?

A way to carry VPN traffic inside a video call. Your app and the node both join a call on a major video-conferencing service and exchange encrypted data through it, so a network observer sees a video call.

Which app runs olcRTC?

An app that implements olcRTC. Ghostlane, an open-source client, does, on iPhone, iPad, Android, macOS, Windows and Linux: it is on the App Store, on Google Play and on GitHub. Happ, Hiddify, V2RayNG and Streisand cannot run it. In the dashboard, the Ghostlane option under Your app gives the list that carries olcRTC.

Do I need a second app for the other transports?

No. Ghostlane runs Reality, Hysteria2 and XHTTP as well as olcRTC, so one app is enough. If you already use Happ, Hiddify, V2RayNG or Streisand, it keeps working for the transports it runs.

When should I use olcRTC instead of Reality, Hysteria2 or XHTTP?

When those do not connect: on networks that let through only a short list of approved services, or that block or throttle connections to foreign servers. When the other transports work, they are faster.

Do calls and games work over olcRTC?

Yes. olcRTC carries UDP as well as TCP, so messenger calls and online games work, with some extra latency because the traffic passes through the video service.

Can the video service read my traffic?

No. Your traffic is encrypted with the key from your personal link before it enters the call. The service can see that a call is taking place, not what is inside it.

Does olcRTC cost more than the other transports?

From 20 November 2026 olcRTC has a price of its own; until then it costs what your route costs, like the other transports. It is one price per GB for the whole network, with the 20% network fee included: 0.0208 TON (about $0.03) from 20 November 2026, 0.0347 TON (about $0.05) from 8 December 2026 and 0.0556 TON (about $0.08) from 22 December 2026. It is read when the traffic moves, not locked when you connect, and a rise is announced at least 30 days ahead. Reality, Hysteria2 and XHTTP keep the node's price plus the 20% fee.

// ready to try it

Connect a node, then add olcRTC

Pick an exit country in the marketplace and connect. Your subscription then carries that node over every transport it offers, olcRTC included.

~/proofkit — the olcRTC path
app → video service
# a call, encrypted
video service → exit node
exit node → internet
# from the node's own IP