Skip to main content

Why Twitch buffers when your internet is fine

and the two comparisons that tell you whose problem it is before you change a setting

Every page ranking for this problem hands you the same list: use Ethernet, change your DNS, turn off hardware acceleration, clear the cache, disable extensions. Some of those fixes work. The list never tells you which one is yours, so you apply all of them, something changes, and you never learn what it was. This page does the step the lists skip. Two comparisons, both free, both about thirty seconds, put your symptom in one of four boxes - and each box has a different owner. One of them is not you at all.

By Marcus Chen Reviewed by Alex Morrison13 minUpdated Fact-checked · 5 sources

In one minute: Do not start with fixes. Start with two comparisons. One: open a large, busy channel in another tab and watch it for a few minutes - if that one is clean, your connection and your machine are probably fine and the problem belongs to the channel you were on. Two: in the player's gear menu, move the quality off Auto onto a fixed rung such as 720p - if the buffering stops, your line cannot hold the rung Auto kept reaching for. Those two answers put you in one of four boxes, and each box points at a different owner: your own machine and browser, your route to Twitch, the channel's quality ladder, or the broadcaster's upload. Only then is a fix worth applying.

  • 2comparisons that separate the causes: a second channel, and a fixed quality rung.
  • 4distinct owners the symptom can have, only two of which are on your side.
  • 1variant stream a channel without transcodes offers, leaving the player nothing to step down to.
  • 0settings worth changing before the two comparisons say which cause is yours.

# The two comparisons that name the cause

Both comparisons are things you can do while the stream is still buffering, and neither changes any setting you would have to undo. Run them in this order.

  1. Open a second channel, and pick a big one. A top-directory channel with thousands of viewers almost certainly has a full set of quality options and is being served from well-provisioned capacity. Watch it for three or four minutes in another tab. If it is smooth while the original channel stutters, that is the single most informative result you can get: the same machine, the same browser, the same connection and the same Twitch account just played video without a problem.
  2. Take the player off Auto. Click the gear in the bottom-right of the player, open Quality, and choose a fixed rung below the top one - 720p is a good first pick. Auto is the player exercising its own judgement about what your connection can carry, and it re-makes that judgement continuously. Pinning the quality removes that variable entirely. If the buffering stops, the problem was the switching, not the connection.
  3. Note what the quality menu contained. If the only entries were Source and Audio Only, that channel is publishing a single video quality and comparison two was never available to you. That is a finding, not a failure - see the fourth row of the table below.
What the two comparisons mean togetherOur triage framework, built on the adaptive-switching behaviour defined in RFC 8216 (HTTP Live Streaming). It is a diagnostic aid, not a vendor statement.
Second channelFixed rung instead of AutoWhere the problem lives
Buffers tooBuffers tooYour side, and it is not bandwidth. Your machine, your browser, or the route between you and the Twitch edge. Section 3 and section 5.
Buffers tooSmoothYour line has enough peak speed but not enough steadiness. Auto keeps climbing to a rung the connection cannot hold and falls back down. Pin the quality.
SmoothSmoothThe original channel, at the quality you were watching. Its top rung is above what your path sustains and a lower rung exists - so pin it there and move on.
SmoothNo other rung to pickThe original channel has no quality ladder. The player has nothing to step down to, so it stalls instead of degrading. Nothing on your side will fix this one.

# Why your speed test says the line is fine

The speed test is not lying and it is not broken. It is answering a question you did not mean to ask. It opens several connections at once to a server picked for proximity, pushes as hard as it can for roughly ten seconds, and reports the peak it managed. That number describes the best short burst your line can produce under ideal conditions.

Live video needs something close to the opposite. It needs a modest rate - a 1080p60 Twitch stream is a single-digit number of megabits - delivered without interruption for hours, from one specific source that the speed test never touched. Twitch describes those sources as Points of Presence: "a small-to-medium deployment of servers in a co-location facility, normally at a major internet exchange point."[4] Your speed test server and the Twitch PoP serving your channel are different machines on different networks reached by different routes. A congested hop on the second route does not appear in the first measurement at all.

This is why the symptom is so often described as random. It is not random; it is intermittent, and intermittent is what a ten-second test is structurally unable to see. A line that delivers 300 Mbps on average while pausing for 400 milliseconds twice a minute will pass every speed test you run and stall every live stream you watch. Peak throughput and delivery steadiness are separate properties, and only one of them is on the test result.

# What to read in the player instead

The Twitch player keeps its own diagnostics, and they are more relevant than anything a general network tool will tell you because they describe the actual session that is failing. Open the gear in the player, go to Advanced, and switch Video Stats on. Our Twitch low latency guide walks through opening the same panel to read Latency To Broadcaster; here we are after different fields.

Video Stats fields worth reading during a stall, and what each one rules outField meanings follow the standard HLS playback model described in RFC 8216. Read 20 September 2026. The right-hand column is our interpretation for this symptom, not a Twitch statement.
FieldWhat it describesWhat a bad reading rules in
Buffer SizeSeconds of video the player is holding ahead of what you are seeingFalls toward zero before every stall: delivery is the problem. Stays healthy through a stall: your machine, not the network
Skipped FramesFrames the player received but could not render in timeClimbing while the buffer stays full: decode or GPU, not bandwidth. This is the one case where hardware acceleration advice applies
Download BitrateThe rate of the rung currently playingJumping up and down repeatedly: Auto is switching under a variance-limited link. Pin the quality
Backend VersionWhich Twitch serving stack you are attached toUseful mainly as a note to include when you ask for help, because it identifies the path you were on
Latency To BroadcasterSeconds between the broadcaster's encoder and your screenRising steadily rather than sitting flat: the stream is falling behind live and will stall to catch up

The distinction in the first two rows is the one that decides half of the fixes on the internet. A buffer that empties before each stall means the bytes are not arriving fast enough or steadily enough - a network story. A buffer that stays comfortably full while the picture still hitches means the bytes arrived and your computer could not turn them into frames in time - a decode story. They look identical on screen and have almost nothing in common as problems. Every generic fix list treats them as one thing.

# When it is the broadcaster, not you

This possibility is absent from essentially every page competing for this query, and the reason is structural rather than accidental: several of those pages exist to sell video repair utilities, driver updaters or connection-bonding subscriptions, and none of those products can be sold to someone whose answer is "nothing is wrong with your computer".

If the person broadcasting has an unstable upload, every viewer sees stalls at every quality simultaneously. Twitch delivers what it received; a gap in the incoming stream becomes a gap in the outgoing one. The HLS specification is explicit that malformed or over-long segments on the server side "can trigger playback stalls and other errors",[3] which is the protocol-level description of what a struggling encoder produces.

  • Read chat. The cheapest test there is. If several people are typing about lag or buffering in the same minute you are seeing it, the cause is upstream of all of you and no setting on your computer will change it.
  • Check whether it survives a quality change. A broadcaster-side gap appears at every rung, because every rung is derived from the same incoming stream. A viewer-side problem usually improves at a lower rung.
  • Check whether it survives a different channel in the same category. This separates one struggling broadcaster from a wider Twitch incident.
  • If you are the broadcaster being asked about this, the diagnosis moves to the sending side entirely: broadcast health shows what Twitch actually received, and OBS disconnects covers the case where the stream is dropping outright rather than wobbling.

There is a fourth actor worth naming, because it produces a symptom that looks like a personal fault and is not one. Twitch's serving capacity is finite and regional. During a very large simultaneous event, a PoP can be under enough load that delivery to some viewers degrades while the same viewers' connections test perfectly. You will not get a notification about it. The tell is timing: buffering that begins and ends on a schedule matching a major broadcast, affects several channels at once, and disappears afterwards without you having changed anything.

# Fixes, in the order the triage points to

Apply the one your two comparisons pointed at. Applying all of them in sequence is how people end up with a working stream and no idea why, which is the same position they were in before, only with more changed settings to undo later.

  1. Auto is switching too much - pin the quality. Gear, Quality, pick a fixed rung one or two below the top. This is the correct fix for a variance-limited line and it costs you some sharpness and nothing else. It is also the only fix on this page that is instant and fully reversible, which is why it goes first.
  2. The buffer empties before each stall - work on steadiness, not speed. A cable instead of Wi-Fi is the single largest improvement available to most people, and the reason is variance rather than throughput: Wi-Fi shares airtime with neighbours, microwaves and every other device in the home, and that contention is exactly the property that live video cannot absorb. Upgrading to a faster plan, by contrast, changes the number that was already fine.
  3. Skipped Frames climb while the buffer stays full - this is your machine. Here, and only here, the standard advice earns its place. Toggle hardware acceleration in your browser and test both states rather than assuming one is correct: on some machines the GPU decode path is the problem and on others it is the fix. Close other GPU-heavy applications. Our supported browsers page covers which builds Twitch actually targets.
  4. Only one channel is affected and it has no quality menu. There is no fix on your side. Watch at a time when your path to Twitch is less congested, or accept that this particular broadcaster's Source bitrate is above what your connection reliably sustains. The mechanism, and what the broadcaster can do about it, is in why Twitch quality options go missing.
  5. Everything buffers and the comparisons did not separate anything. Now test the route rather than the machine. A VPN is a diagnostic instrument here, not a fix: if a VPN makes Twitch smooth, the problem is a specific path between your provider and the Twitch PoP, which is information you can take to your provider. If it changes nothing, the path was never the issue and you have ruled out a whole category.

Smooth playback keeps the viewers a channel already has. Being found is the other half

Everything above is about one viewer getting a clean picture. The harder problem for a channel is that a viewer-sorted directory shows almost nobody to almost nobody. Streamrise delivers Twitch viewers paced across a session rather than dropped in a spike, so a channel climbs that directory instead of appearing from nowhere.

  • 2021 delivering Twitch viewers since
  • 60-day drop refund
  • No password required
See Twitch pricing →

# Advice from the top results that does not apply

None of the following is invented; all of it appears repeatedly on pages currently ranking for this query. The problem is that each is offered unconditionally, to a reader whose cause has not been identified.

  • Video repair software. Several of the highest-ranking results for this query are published by companies selling file-repair tools. A live stream is not a file on your disk. There is nothing for such a tool to repair, and the presence of this advice is a reliable signal that the page was written to rank rather than to help.
  • Upgrade your internet plan. The premise of the query is that the plan is already fast. Paying for a higher peak does not change delivery steadiness, which is the property that was failing.
  • Change your DNS. DNS resolves a hostname to an address once, at the start. It can plausibly affect how long a channel takes to begin playing. It cannot cause a stall forty minutes into a stream, because no lookup is happening then.
  • Clear your cache and cookies. Harmless, occasionally fixes an unrelated player fault, and unrelated to a network delivery problem. Worth trying only after the triage has pointed at your own machine.
  • Disable hardware acceleration. Genuinely useful in one of the four boxes - Skipped Frames climbing while Buffer Size holds - and irrelevant in the other three. Test both states rather than treating off as the correct answer.
  • Install a browser extension to fix buffering. Extensions that claim to stop buffering generally work by pinning quality, which you can do yourself in the player's gear menu in two clicks with nothing installed and nothing granted access to your browsing.

# The bottom line

Buffering on a fast connection is not a malfunction that needs a list of remedies applied until one sticks. It is a question with four possible answers, and two comparisons costing under a minute eliminate three of them. Open a second large channel; move the quality off Auto. What happens next tells you whether you are looking at your machine, your route, the channel's quality ladder, or the person broadcasting.

The reason this matters more than the specific fix is that two of the four answers are not yours. A reader who never runs the comparisons will keep changing settings on a computer that was working correctly the whole time, which is the outcome most of the pages competing for this query quietly depend on. Knowing that a channel with a single variant stream gives your player nothing to switch down to[2] is worth more than any amount of cache clearing, because it converts an infuriating mystery into a known limitation with a known workaround.

If you are on the other side of this - a broadcaster hearing about buffering from your own viewers - the diagnosis inverts, and the relevant questions are what Twitch actually received from you and whether your stream was given a quality ladder at all. Both are covered in the guides linked below.

# FAQ

Why does Twitch buffer when my internet is fast?

Because speed and steadiness are different properties and a speed test only measures the first one. A live stream needs a modest rate delivered without gaps for hours, from one specific Twitch site that your speed test never contacted. A line that averages 300 Mbps but pauses for a few hundred milliseconds twice a minute passes every test and stalls every stream. The other common cause is not on your side at all: if the channel you are watching publishes only one video quality, the player has no lower rung to fall back to and waits instead of degrading.

Why does Twitch buffer on one channel but not another?

Two reasons, and the quality menu tells you which. If the struggling channel's gear menu offers only Source and Audio Only, it has no transcodes, so your player cannot step down when your connection dips - it can only wait. If the menu is full but you were on the top rung, that channel's Source bitrate is simply above what your path sustains, and pinning a lower rung fixes it. A third possibility is that the broadcaster's own upload is unstable, which you can check by reading chat for other people reporting the same thing at the same moment.

Will an Ethernet cable actually stop Twitch buffering?

Often, but not for the reason usually given. The benefit is not more bandwidth - your Wi-Fi almost certainly had enough. It is lower variance. Wi-Fi shares airtime with neighbouring networks and other devices, and that contention produces exactly the short, irregular delivery gaps that live video cannot absorb and a speed test cannot see. If the player's Buffer Size empties just before each stall, a cable is the highest-value change available. If the buffer stays full and Skipped Frames climb instead, a cable will do nothing, because the bytes were arriving fine.

Should I leave Twitch quality on Auto?

Leave it on Auto if playback is smooth. Auto exists to keep you watching by trading resolution for continuity, and it usually does that well. Turn it off when the symptom is repeated stalling with a Download Bitrate that keeps jumping between values - that pattern means Auto is climbing to a rung your connection cannot hold, failing, and climbing again. Pinning a fixed rung one or two steps below the top removes the oscillation entirely. It is instant, reversible, and the first thing to try.

How do I tell whether the problem is Twitch itself?

Check whether it crosses channels and whether it crosses people. Open two or three unrelated large channels; if all of them stall while other video sites are clean, the cause is either your path to Twitch specifically or Twitch's capacity in your region. Reading chat on a busy channel settles it quickly, because a platform-side or region-side problem produces many people saying so within the same minute. Regional congestion during very large simultaneous events is real, produces no notification, and resolves on its own.

What if none of the fixes work?

Then the most likely answer is that the cause is not yours to fix, and the triage will have told you so: a channel with no quality ladder, a broadcaster with an unstable upload, or congestion on the route between your provider and the Twitch Point of Presence serving you. In the last case a VPN test is worth running as a diagnostic - if the stream becomes smooth over a VPN, you have evidence of a specific bad path that is worth reporting to your provider rather than working around forever.

Marcus Chen

Technical Editor, API & Integrations

Previously reseller-API developer for streaming-services tooling. Writes Streamrise /apidoc, reseller integration, and broadcast-software technical content.

More from Marcus →

Sources & further reading

  1. RFC 8216 — HTTP Live Streaming, section 2 (Overview)
    Verbatim: "Clients should switch between different Variant Streams to adapt to network conditions." Also: "A Variant Stream includes a Media Playlist that specifies media encoded at a particular bit rate, in a particular format, and at a particular resolution for media containing video." R. Pantos, Ed., Independent Submission, August 2017. Fetched and read as plain text on 20 September 2026.
    https://www.rfc-editor.org/rfc/rfc8216.txt
  2. RFC 8216 — HTTP Live Streaming, section 6.2.4 (Providing Variant Streams)
    Verbatim: "A server MAY offer multiple Media Playlist files to provide different encodings of the same presentation. If it does so, it SHOULD provide a Master Playlist file that lists each Variant Stream to allow clients to switch between encodings dynamically." This is the basis for the statement that a single-variant channel gives the player nothing to switch to. Read 20 September 2026.
    https://www.rfc-editor.org/rfc/rfc8216.txt
  3. RFC 8216 — HTTP Live Streaming, sections 4.3.4.2 and 6.2.1 (server responsibilities)
    Verbatim: "Segments that are longer than the planned target duration can trigger playback stalls and other errors." And, on the BANDWIDTH attribute: "An inaccurate value can cause playback stalls or prevent clients from playing the variant." Cited here as protocol-level evidence that server-side irregularities produce viewer-side stalls. Read 20 September 2026.
    https://www.rfc-editor.org/rfc/rfc8216.txt
  4. Twitch Developers — Video Broadcasting Overview
    Verbatim: "There are many ingest servers, each living in a PoP (Point of Presence, a small-to-medium deployment of servers in a co-location facility, normally at a major internet exchange point)." Fetched over HTTP and read on 20 September 2026; page heading "Video Broadcasting Overview" present in the rendered text.
    https://dev.twitch.tv/docs/video-broadcast/
  5. Twitch Developer Forums — "Does twitch transcode the data broadcasted"
    Verbatim, from the staff-side reply by user george, 6 November 2017: "“Source” is not transcoded, just transmuxed so the resolution and quality are exactly the same as what is leaving the broadcaster's encoder." Retrieved as Discourse JSON on 20 September 2026. Only the transmux mechanism is cited; the same post's 2017 description of who receives transcodes is superseded by Twitch's current Transcoding Options FAQ and is not relied on here.
    https://discuss.dev.twitch.com/t/does-twitch-transcode-the-data-broadcasted/12746
Streamrise · Real Twitch growth

A clean picture keeps the viewers you have. Getting found brings new ones.

Diagnosing playback fixes one person's experience of a channel. It does not put the channel in front of anyone new. Streamrise delivers Twitch viewers paced across a session rather than dropped in a spike, so a channel climbs a viewer-sorted directory instead of appearing from nowhere.