they still live?
Check if a YouTube or Twitch channel is streaming right now. No API keys, no login - scraped from the public channel page.
API
run a check to see the response
One channel
GET /yt/lofigirl
GET /yt/UCSJ4gkVC6NrvII8umztf0Ow
GET /twitch/ludwig
Several at once - comma-separated, up to 10. Prefix with platform: to mix.
GET /twitch/lofigirl,ludwig
GET /yt/lofigirl,twitch:ludwig
Batches answer { results: [...], live: ["yt:lofigirl"] }.
Fields
livestreaming right nowfoundchannel existsidstable ref - YouTube channel id, Twitch loginurlwatch link while liveembediframe player URL while live, elsenullthumbnail+artpreview, offline art, banner, or avatarage/ttlseconds since the scrape, and its lifetime
Embedding - drop embed straight into an iframe. Twitch needs its parent filled in with the host serving your page.
<iframe src="{embed}" allowfullscreen></iframe>
Limits - 20 requests per minute per IP, one channel per unit. Answers are cached 60s, so polling is free inside that window. No key, no login.
Is that streamer live right now?
Paste a YouTube handle or a Twitch username and this page answers in about a second: live or offline. If they are streaming, you get the current thumbnail, a watch link, and a player you can start right here. If they are not, you get their offline art and how long ago the answer was checked. Leave the tab open and it keeps rechecking, so it tells you the moment someone goes live.
A free live-status API with no API key
The same URL you are reading is the API. Request /yt/lofigirl or /twitch/ludwig with
Accept: application/json and you get back {"live": true} plus the channel id, watch URL,
embed URL, and thumbnail. There is no developer account to register, no OAuth dance, no client secret, and no quota
form to fill in. It works from a shell script, a Discord bot, a status page, or an OBS overlay.
Both official APIs make this harder than it should be. YouTube's Data API charges quota for a search call and returns stale results. Twitch's Helix API needs a registered app and an app access token you have to refresh. This service reads the same public channel pages your browser would, so nothing needs authenticating.
How the live check works
A YouTube channel's /live URL redirects to the watch page only while a stream is running, so the
canonical link tells you the answer and hands over the video id. A Twitch channel page titles itself
Name - Live on Twitch only while broadcasting. Reading those two markers is the whole trick - no key
required, because the information is already public.
Questions
- Do I need a YouTube or Twitch API key?
- No. Nothing here uses the YouTube Data API or Twitch Helix, so there is no key, token, app registration, or quota.
- How quickly does it notice someone going live?
- Within a minute. Each channel is re-checked upstream at most once every 60 seconds, and the page repolls every 20 seconds.
- Can I check several channels in one request?
-
Yes. Comma-separate up to ten, and prefix an entry with
twitch:oryt:to mix platforms in one call. The response includes a shortlist of whoever is live. - Can I embed the stream?
-
Yes. A live result carries an
embedURL for the official YouTube or Twitch player, ready to drop into an iframe. Twitch's player refuses to load unless itsparentparameter names the domain serving your page, so replace theYOUR_DOMAINplaceholder with your own hostname before using it. - Is it free, and are there limits?
- Free. Twenty requests per minute per IP, and answers are cached for 60 seconds, so polling inside that window costs nothing.
- Does it work with a channel ID instead of a handle?
- Yes. A YouTube
UC...channel ID works anywhere a handle does, and is the more stable reference.