{"rid":"storage/syncthing-community-relay-pool","card":{"rid":"storage/syncthing-community-relay-pool","eid":"syncthing","topic":"storage","slug":"syncthing-community-relay-pool","provider":"Syncthing community relay pool","url":"https://relays.syncthing.net/","domain":"syncthing.net","category":"P2P relay pool (operator-donated)","tier":null,"verdict":"qualifies-with-caveat","vorder":1,"grp":"usable","confidence":"reported","binding":"per-ip-shaping","identity_kind":"anonymous","identity_basis":"stated","needs_card":0,"needs_phone":0,"needs_id":0,"needs_institution":0,"country":null,"crypto":null,"interfaces":null,"egress_metered":0,"per_object_bytes":null,"retention_days":null,"verified_at":"2026-10-21T00:00:00.000Z","verified_basis":"inherited","checked_on":"2026-10-21","stale_on":"2026-11-04","n_evidence":4,"usd_month":null,"usd_per_tb_month":null,"summary":"No quota at all — relay operators cap themselves with -global-rate (commonly ~20 Mbps in and out). The pool is anonymous and unvetted.","duplicate_of":null,"n_unknown":6},"record":{"topic":"storage","slug":"syncthing-community-relay-pool","provider":"Syncthing community relay pool","url":"https://relays.syncthing.net/","category":"P2P relay pool (operator-donated)","free_tier":{"stated":"No quota at all — relay operators cap themselves with -global-rate (commonly ~20 Mbps in and out). The pool is anonymous and unvetted.","unit":"unlimited","metered_on":"unstated","source_url":"https://relays.syncthing.net/endpoint","read_on":"2026-10-21","notes":null},"per_object_cap":{"stated":"not stated","source_url":"https://relays.syncthing.net/endpoint","notes":"not stated"},"retention":{"stated":"not stated","source_url":"https://relays.syncthing.net/endpoint","notes":"not stated"},"egress":{"terms":"Free. Paid for by whoever runs each relay, not by a company with a budget.","metered":false},"interface":["unknown"],"interface_detail":"relay:// protocol on 22067; the pool is a JSON endpoint.","tooling":"strelaysrv; Syncthing's own relay selection.","chaining":"Relay is only used until a direct connection is established; Syncthing then switches to direct and the relay carries nothing.","limits":[{"kind":"per-ip-shaping","value":"20 Mbps","source":"https://relays.syncthing.net/endpoint"}],"limits_note":"Per-relay bandwidth set by the operator; sessions per client and per relay are limited. Relays can vanish without notice.","identity_cost":{"kind":"anonymous","detail":"anonymous","country":null},"reliability_note":"The pool endpoint returns dozens of `relay://IP:22067` entries with self-signed device IDs. No accounting means no sustainability, but also no gate.","confidence":"reported","confidence_note":"One page read moves it to documented.","evidence":[{"url":"https://relays.syncthing.net/endpoint","date":"2026-10-21","proved":"literal JSON list of relay:// URLs with IDs"},{"url":"https://docs.syncthing.net/users/strelaysrv","date":"2026-10-21","proved":"'Anyone can run a relay server, and it will automatically join the relay pool'"},{"url":"https://docs.syncthing.net/users/relaying.html","date":"2026-10-21","proved":"traffic is bounced via a relay only when a direct connection is impossible"},{"url":"https://relays.syncthing.net/","date":"2026-10-21","proved":"'The relays listed on this page are not managed or vetted by the Syncthing project'"}],"verdict":"qualifies-with-caveat","verified_at":"2026-10-21T00:00:00.000Z","notes":"No quota at all — relay operators cap themselves with -global-rate (commonly ~20 Mbps in and out). The pool is anonymous and unvetted.","extras":{},"binding":"per-ip-shaping","binding_note":"one stream is shaped, and a user's throughput is the shaped rate times the number of streams"},"claims":[{"path":"$.free_tier.stated","kind":"free-quota","num":null,"unit":null,"per":null,"currency":null,"usd":null,"fx_date":null,"parse":"unparsed"},{"path":"$.limits[0].value","kind":"limit:per-ip-shaping","num":null,"unit":null,"per":null,"currency":null,"usd":null,"fx_date":null,"parse":"unparsed"}],"unknown":[["$.free_tier.notes","process"],["$.interface","interface-unknown"],["$.per_object_cap.notes","not-extracted"],["$.per_object_cap.stated","not-extracted"],["$.retention.notes","not-extracted"],["$.retention.stated","not-extracted"]],"history":[],"drift":[]}