Troubleshooting

IPTV Buffer Size Settings: What to Set in TiviMate, VLC and Kodi

· 14 min read · By the IPTV Online Channel team

Cover graphic of a video buffer bar filling ahead of the playhead, with labels for TiviMate, VLC network caching and Kodi
The player’s buffer is a small reserve of upcoming video; its size trades start-up delay against stability.

A bigger player buffer makes live TV steadier on a shaky connection, at the cost of a longer wait when a channel starts and a few more seconds behind live. Raise the buffer one step above the default, test it for a full evening, and only go larger if stalls continue. On 1 GB streaming sticks, very large buffers can slow the app down.

Key takeaways

  • A larger buffer absorbs short dips in your connection, but channels take longer to start and you sit further behind live.
  • A buffer can’t fix a connection that is too slow for the stream; it only smooths out short interruptions.
  • VLC’s Network caching defaults to 1,000 ms; 3,000 ms is a sensible first step on shaky Wi-Fi.
  • Kodi 21 and later moved cache options to Settings → Services → Caching; the old advancedsettings.xml tags are ignored.
  • On 1 GB streaming sticks, keep buffers modest and change one setting at a time, testing for a full evening.

What a player buffer is, and what it can’t do

A buffer is a small reserve of video that the player downloads ahead of what you are watching. While the connection is steady, the reserve stays full. When the connection dips for a moment, the player keeps playing from the reserve, and you never notice.

The buffer only helps with short interruptions. If your connection is slower than the stream for minutes at a time, the reserve drains no matter how big it is, and the picture stops. A buffer cannot add bandwidth, fix a weak Wi-Fi signal or speed up a busy server.

That is why buffer settings come after the basics. If channels stall often, start with our nine buffering fixes, which cover the connection, the device and the app. Come back here when the connection is reasonable but you still see the odd stall.

The trade-off: delay against stability

Every buffer size is a compromise. A larger reserve rides out longer dips, but the player needs more time to fill it before it starts, and it holds you further behind the live broadcast. A smaller reserve starts fast and stays close to live, but stalls at the first hiccup.

What changes as you raise the player’s buffer.
BufferChannel startDelay behind liveRides out dipsMemory usedSuits
SmallFastestShortestOnly very brief onesLowestWired connections, fast channel surfing
Medium (often the default)NormalA few secondsShort Wi-Fi blipsModerateMost homes
LargeSlowerLongerLonger dips and busy eveningsHigherUnsteady Wi-Fi, one channel at a time
Very largeSlowLongestLong dips, if the stream allowsHighest; risky on 1 GB sticksLast resort on poor connections

For live sports, the delay matters more than most people expect. If a neighbour’s cheer or a phone alert keeps spoiling goals, a smaller buffer brings you closer to live. If you mostly watch news or movies, an extra few seconds of delay costs you nothing.

Why live TV can’t buffer very far ahead

With a movie, the whole file already exists, so a player can download minutes ahead. A live channel only exists up to the moment it was broadcast. The player can never buffer beyond that live edge, however large you set the buffer.

Many live streams are delivered as HLS, in short segments listed in a playlist that updates as the broadcast goes on. The HLS specification, RFC 8216, tells players not to start a live stream at a segment less than three target durations from the end of the playlist, because doing so can trigger stalls. That built-in distance from the live edge is part of why live TV always runs a little behind.

The same limit explains an error some Android players show after you pause live TV for a long time. The playlist only keeps a window of recent segments, and if your paused position falls out of that window, the player can’t continue. Google’s Media3 library calls this falling “behind the live window”; the fix is to jump back to live.

How Android players decide when to start playing

Many Android apps that play video use ExoPlayer, which is now part of Google’s Media3 library. Its default rules show how a player balances start-up speed against safety, even when an app doesn’t show you the numbers.

According to the Media3 DefaultLoadControl reference, the defaults are to start playback once 1,000 ms of media is buffered, to resume after a stall once 2,000 ms is buffered, and to try to keep 50,000 ms buffered at all times. On a live channel, that 50-second target is rarely reachable, because of the live edge described above.

So when an app offers a buffer setting, it is usually changing these thresholds: how much to collect before starting, and how much to collect after a stall. A larger setting means a longer wait after each stall, but fewer stalls in a row.

How big is a buffer in megabytes?

Players measure buffers in seconds, milliseconds or megabytes. To convert, divide the stream’s bitrate in Mbps by 8 to get megabytes per second, then multiply by the number of seconds. The table uses the per-stream figures from our guide to internet speed for IPTV.

Approximate memory needed to hold 10, 30 and 60 seconds of video.
QualityBitrate used10 seconds30 seconds60 seconds
SD4 Mbps5 MB15 MB30 MB
HD (720p)8 Mbps10 MB30 MB60 MB
Full HD (1080p)10 Mbps12.5 MB37.5 MB75 MB
4K25 Mbps31 MB94 MB188 MB

The numbers explain why huge buffers backfire on small devices. A minute of 4K needs close to 200 MB in memory, on a stick that also runs the system, the player, the channel list and the TV guide. On a phone or a computer with several gigabytes of memory, the same buffer is trivial.

How a buffer refills, and why headroom matters

A buffer drains at the speed of the stream and refills only with whatever bandwidth is left over. That leftover is what decides whether a bigger buffer helps.

Take a Full HD channel at 10 Mbps on a Wi-Fi link that delivers 15 Mbps. Each second, 10 Mbps goes to playing the picture and only 5 Mbps is spare to rebuild the reserve. If a dropout empties 3 seconds of buffer, that is 30 megabits to replace, which takes about 6 seconds of spare capacity. A second dropout inside those 6 seconds hits a half-empty buffer.

Now put the same channel on a 50 Mbps link. The spare capacity is 40 Mbps, and the same 3 seconds refill in under a second. That is why a strong connection with a small buffer usually beats a weak connection with a huge one, and why our speed guide recommends leaving headroom above each stream’s bitrate.

The practical rule follows from this. If your connection has plenty of headroom but drops out briefly, a larger buffer helps a lot. If your connection barely covers the stream, a larger buffer only delays the stall, and the real fix is more headroom or a lower quality.

Signs your buffer is too small, or too big

You don’t need to guess. The way playback fails tells you which way to move the setting:

  • Too small: short stalls of a second or two, several times an evening, often when someone else starts using the Wi-Fi or a phone moves around the house.
  • Too small: a stall right after a channel starts, then smooth playback once it gets going.
  • Too big: channels take noticeably longer to start than they used to, and channel surfing feels slow.
  • Too big: you hear neighbours react to a goal well before you see it, or your phone’s score alerts arrive first.
  • Too big for the device: menus and the TV guide become sluggish, or the player restarts when you switch apps.

If you see signs from both lists, the buffer isn’t the main issue. That pattern usually means an unsteady connection on a device that is already short of memory, and the fixes are a cable or better Wi-Fi, plus a lighter app setup.

TiviMate: where to find the buffer setting

In TiviMate, the buffer option sits with the other playback options in the app’s Settings; look for Buffer size in the playback section. Menu layouts change between versions, so if you don’t see it there, check each section of Settings for the word “buffer”.

  1. Note the current setting before you change it.
  2. Move up one size only.
  3. Go back to a channel that used to stall and watch it during the evening.
  4. If stalls drop but channels now take too long to start, step back down and look at the connection instead.

Leave the decoder and other playback options alone while you test the buffer, so you know which change helped. Our TiviMate setup guide for Fire TV covers the rest of TiviMate’s settings, from the TV guide to recommended playback options.

On Fire TV, these steps apply to the Android-based Fire OS models. Amazon’s newest sticks, such as the Fire TV Stick 4K Select (2025), the Fire TV Stick 4K (3rd Gen, 2026) and the Fire TV Stick HD (2026), run Vega OS, which is not Android and only installs apps from Amazon’s store, so Android players like TiviMate and Kodi can’t be added to them. Our streaming device buying guide explains which models suit IPTV players.

VLC: network caching in milliseconds

VLC calls its buffer Network caching and measures it in milliseconds. In VLC 3, the default is 1,000 ms, one second of video. VideoLAN’s command-line reference lists the accepted range as 0 to 60,000 ms.

On Windows and Linux

  1. Open Tools → Preferences.
  2. At the bottom left, under Show settings, choose All.
  3. Select Input / Codecs in the list on the left.
  4. Find Network caching (ms), change the value, and click Save.
  5. Close VLC fully and open it again before testing.

On a Mac, the same option is in VLC’s full preferences, under Input / Codecs. To change it for one stream only, open the stream with Media → Open Network Stream, tick Show more options, and set the Caching value before you press Play.

From the command line

If you start VLC from a shortcut or a script, add --network-caching=3000 followed by the stream address to set three seconds for that session. VLC for Android also has a network caching option in its advanced settings; the name varies between versions, so search its settings for “caching”.

Kodi: Settings → Services → Caching

Kodi’s cache settings moved in version 21 (Omega). According to the Kodi wiki page on caching, they are now in Settings → Services → Caching, at the Advanced settings level. The older advancedsettings.xml method is deprecated, and any cache tags still in that file are ignored.

If the Caching section doesn’t appear, change the settings level, which Kodi shows at the bottom of the settings screen, from Standard to Advanced. Then you will see four options:

  • Buffer mode: what to buffer. For IPTV, any choice that includes true internet streams (HTTP, HTTPS) works; never pick No buffer.
  • Memory size: megabytes of memory for the buffer. Setting it to 0 writes the cache to storage instead of memory, which is slow and wears the small storage on a streaming stick.
  • Read factor: how fast Kodi fills the cache, as a multiple of the stream’s average bitrate. The default is 4x; the Adaptive option reads aggressively when the cache is low and settles at 1.5x when it is full.
  • Chunk size: the size of each read, from 16 KB to 1 MB, with 128 KB as the default.

For live TV, raise Memory size in small steps and choose Adaptive for the read factor; the wiki notes that low read factors work better on less powerful Android devices. Leave chunk size at its default unless you are tuning a specific problem. On Kodi 20 or older, updating Kodi is simpler and safer than hand-editing advancedsettings.xml.

Other players and set-top boxes

Many other players have a buffer option, but the name and place vary. Look in the player or playback settings for Buffer, Buffer size, Cache, Network caching or Pre-buffer. Some players offer named sizes, some ask for seconds, and some have no buffer setting at all.

If your player has no buffer option, it uses its own built-in defaults. You can still choose a different internal player in some apps, or switch to a player that does expose the setting. Smart TV apps on Samsung and LG often have fewer options than Android players.

MAG and Formuler boxes use a portal login and their own player settings. Where a buffer option exists, it is usually in the player or playback section of the box’s settings menu. As with any player, change one thing, then test on the same channel at the same time of day.

These are starting points, not magic numbers. Start with the default, go one step up if you see stalls, and stop as soon as playback is steady.

Starting buffer values to test in common players.
PlayerSettingDefaultFirst stepDon’t go past
TiviMateBuffer size, in the playback settingsApp defaultOne size largerThe largest size, and only on 2 GB devices
VLC (desktop)Network caching (ms)1,000 ms3,000 msAbout 10,000 ms; longer adds a long start delay
Kodi 21 and laterServices → Caching → Memory sizeKodi defaultA small increaseLeave most memory to the system on 1 GB sticks
Kodi 21 and laterServices → Caching → Read factor4xAdaptiveAvoid very high fixed values on weak devices
Other playersBuffer, Cache or Pre-bufferApp defaultOne step largerWhatever makes channel starts annoying

How to test a buffer change properly

Stalls depend on the time of day, the channel and what else is happening at home, so a quick look after changing a setting tells you very little. Test it like this:

  1. Write down a baseline. Before changing anything, watch one channel for an hour in the evening and count the stalls.
  2. Note the start time. Count the seconds from selecting a channel to the first picture, on three channels.
  3. Change one setting, one step. Nothing else changes: same device, same channel, same connection.
  4. Repeat at the same time the next evening and count again.
  5. Check the delay. Compare the picture with a phone or another device on the same channel to see how far behind you now are.
  6. Keep or revert. Keep the change only if stalls clearly dropped and the extra start time feels acceptable.

While you test, run our IPTV speed test on the same device. If jitter is high, the buffer is fighting an unsteady connection; our guide to ping, jitter and packet loss shows how to find the cause.

Memory limits on streaming sticks

Streaming sticks have far less memory than phones. Amazon’s Fire TV Stick specifications list 1 GB of RAM for the Fire TV Stick Lite (2020), the Fire TV Stick (3rd Gen) and the Fire TV Stick HD (2024), and 2 GB for the Fire TV Stick 4K (2nd Gen), the 4K Max (2nd Gen) and the 4K Plus (2025). All of these run the Android-based Fire OS.

That memory is shared by the system, the player, the channel list, the TV guide and the buffer. Push the buffer too high on a 1 GB stick and other things give way: the guide scrolls slowly, the app restarts when you return to it, or playback stutters even though the buffer is full.

  • Close apps you aren’t using, and restart the stick every few days.
  • Keep the buffer at medium on 1 GB models; use larger sizes only on 2 GB models.
  • Don’t point a cache at storage, as Kodi does with a memory size of 0; the stick’s storage is small and slow.
  • If the stick is short on space or slow overall, our guide to a slow Fire TV Stick with full storage walks through the clean-up.

When a bigger buffer won’t help

Raising the buffer is the wrong tool for several common problems, and it can make them feel worse by adding delay. Look elsewhere if you see these:

  • Stalls that last a minute or more. The connection is too slow for that quality, not briefly interrupted. Lower the quality or fix the connection.
  • Stutter with a full buffer. If the picture judders while the buffer indicator is full, the decoder is struggling; change the decoder setting instead.
  • One channel stalls, others are fine. That stream may have a problem; tell us its name.
  • An error message instead of a stall. A code such as 403 or 404 is not a buffering problem; our guide to IPTV error codes explains each one.
  • Stalls only at night. Evening congestion is a network problem; a larger buffer only delays the stall by a few seconds.

Does a bigger buffer use more data?

No, not over an evening. The player still downloads the same video you watch, at the same quality, so an hour of a channel uses the same amount of data whatever the buffer size. What changes is the timing: a larger buffer downloads a burst at the start of each channel and after each stall, then settles to the stream’s normal rate.

Those bursts matter a little in two situations. When several people in a home change channels at the same moment, the bursts add up and can briefly crowd a modest connection. And on a capped or mobile connection, heavy channel surfing with a large buffer downloads video you never watch. On a normal home plan, neither is a reason to avoid a larger buffer.

Each device keeps its own buffer, so changing the setting on the living-room stick does nothing for the bedroom TV. If two screens stall at the same moment, the shared connection is the more likely cause, and a buffer change on one device won’t fix the other.

Catch-up and movies behave differently

Catch-up programs, movies and series are recordings, so the whole file already exists. Players can buffer much further ahead than with live TV, and the buffer setting matters less. If a movie stalls, a larger buffer helps more than it would on a live channel, because the player can fill it faster than real time.

Seeking is the exception. Every jump forward or back empties the buffer and starts a fresh download, so a very large buffer makes each jump slower to resume. If you often skip around, a medium buffer is the better balance. Our guide to catch-up TV and timeshift explains how recordings and paused live TV work.

Still stalling after tuning the buffer?

If you have tested a larger buffer for a few evenings and stalls continue, the cause is somewhere a buffer can’t reach. Send Online Support your device model, your player and its buffer setting, a speed test result from that device, and the channels and times that stall. We can usually tell from that whether it is the home network, the device or a stream on our side.

If you’re comparing plans or adding a screen for another TV, our IPTV subscription plans all include the same support, from $17 for one month on one screen.

Questions people ask

What buffer size should I use for IPTV?

Start with your player’s default. If you see occasional stalls on Wi-Fi, go one step larger, such as from 1,000 ms to 3,000 ms in VLC, and test for a full evening. Stop as soon as playback is steady, because every step adds start-up delay and puts you further behind live.

Does a bigger buffer stop IPTV buffering?

Only for short dips. A bigger buffer lets the player ride out a few seconds of weak Wi-Fi or a brief slowdown. If your connection is slower than the stream for long stretches, the buffer still empties and playback stops, so fix the connection or choose a lower quality.

Why does my channel take longer to start after increasing the buffer?

The player waits to collect more video before it begins, and a live channel can only arrive as fast as it is broadcast. A larger buffer therefore means a longer pause on each channel change and after each stall. If that bothers you, step the buffer back down one size.

Where are the cache settings in Kodi 21?

In Settings, then Services, then Caching. You may need to switch the settings level to Advanced to see them. Kodi 21 moved buffer mode, memory size, read factor and chunk size there from the advancedsettings.xml file, and ignores any old cache tags left in that file.

Can a large buffer slow down my Fire TV Stick?

Yes, on models with 1 GB of memory. The buffer shares that memory with the system, the player and the TV guide, so a very large buffer can make menus sluggish or force the app to restart. Keep the buffer moderate on 1 GB sticks and save larger sizes for 2 GB models.

Questions about your setup?

Our support team is available 24/7 and happy to help — even before you buy.

Open Online Support

7-day money-back guarantee

Live Chat