An unstable upload speed almost always comes from one of five places: Wi-Fi, something else on your network using the uplink, a VPN, aging equipment, or your ISP's line. You can tell which one it is in about 30 minutes by changing one variable at a time and testing again. Do not buy a faster plan until you have done that.
Some swing is normal. A single test is a snapshot of a shared path, and two runs a minute apart will rarely match. What deserves attention is a pattern: uploads that start strong and collapse after a few seconds, speeds that sag at the same hour every evening, or a livestream that stutters while the test looks fine.
TL;DR
- Test over Ethernet first. If the wired result is steady and Wi-Fi is not, the problem is your wireless link, not your ISP.
- Pause cloud backups, sync apps, and video calls, and disconnect any VPN. Then add them back one at a time to find the culprit.
- If upload collapses and latency spikes at the same moment, suspect bufferbloat, a queueing problem that a router setting can often improve.
- If wired tests from several devices stay low or crash repeatedly, record the results and call your ISP.
- Streamers: plan for roughly twice your stream bitrate in available upload, and check encoder load before blaming the network.
Table of Contents
- What "fluctuating" actually looks like
- Step 1: Get a clean baseline over Ethernet
- Step 2: Fix Wi-Fi if the cable test was clean
- Step 3: Find what else is using your uplink
- Step 4: Rule out the VPN
- Step 5: Check for bufferbloat when speed and lag appear together
- Step 6: Look at your hardware and your ISP
- If you stream: a steady test does not mean a steady stream
- Perspective: stability matters more than the peak
- Test it yourself
- FAQ
- Sources
What "fluctuating" actually looks like
The symptoms point to different causes, so name yours before you change anything.
| What you see | Most likely cause |
|---|---|
| Fast for 5 to 15 seconds, then drops | Buffering at a bottleneck, ISP shaping, or a queue filling up |
| Different on every run, only on Wi-Fi | Interference, distance, or channel congestion |
| Slow at the same hours every day | Neighborhood congestion or a background job on a schedule |
| Near zero, with every device and server | Line, modem, or account provisioning problem |
| Upload swings and calls or games lag at the same time | Bufferbloat |
| Stream drops frames but the speed test looks fine | Encoder overload or a poor route to the platform |
Troubleshooting guidance from AVG lists the same families of causes: Wi-Fi congestion, outdated hardware, background apps, and problems on the provider's side. TalkTalk's support page adds crowded Wi-Fi channels and VPN routing as reasons for slow speeds and dropped connections.
Step 1: Get a clean baseline over Ethernet
Wi-Fi is the most common source of variation, and it is the easiest to rule out. Plug a laptop into the router with a cable, close everything else, and run a test. Then repeat it three or four times over a few minutes.
This works not because a cable adds upload speed. It removes Wi-Fi airtime contention and unknown users from the picture. Hudl's support team makes the same point for broadcasters: a direct Ethernet connection to a dedicated network is less likely to fluctuate than a shared or wireless one.
Read the result like this:
- Wired is steady and near your plan's upload speed. Your ISP delivers. Move on to Wi-Fi fixes.
- Wired is also erratic. The cause sits upstream of your Wi-Fi: background traffic, VPN, your modem, or the ISP.
- Wired is steady but well under your plan. Check the plan's advertised upload first. Many cable plans have far lower upload than download, and it is easy to compare the wrong number.
Run the test on GrandSpeed, which reports upload alongside latency, jitter, and packet loss. A swinging upload number that comes with rising jitter tells you more than the Mbps figure alone.
Step 2: Fix Wi-Fi if the cable test was clean
If the wired result holds but wireless jumps around, work through these in order:
- Test in the same room as the router. If the speed steadies, distance or walls are your problem. A mesh node or a wired access point beats a repeater in most homes.
- Move to 5 GHz or 6 GHz where your devices support it. The 2.4 GHz band is crowded by neighbors, microwaves, and Bluetooth devices.
- Change the channel. In apartment buildings, dozens of networks may share the same few channels. Pick a less busy one in your router's wireless settings, or leave it on auto and restart the router.
- Update router firmware and the device's Wi-Fi driver. Meter's guide to raising upload speed starts with exactly this kind of update check.
- Retest from a second device. If only one laptop misbehaves, the fault is in that machine's adapter or settings, not in the network.
For anything where a drop costs you, such as a livestream or an important video call, stop relying on Wi-Fi. Our own write-up on when Ethernet beats Wi-Fi for streaming explains the headroom rule in more detail.
Step 3: Find what else is using your uplink
Upload capacity is usually the smallest part of a home connection, so a single background job can eat most of it. Common offenders:
- Automatic photo and file backups to cloud storage
- Sync clients such as Dropbox, OneDrive, or Google Drive catching up after you edit a large file
- Windows or macOS updates and game launchers pushing or seeding data
- A family member on a video call or uploading a clip
- Security cameras that send footage to the cloud
Guidance from Sync recommends pausing or limiting competing transfers, retesting, and then restoring them one at a time to identify the one causing the trouble. If the problem appears only during large uploads, the uplink is being saturated, and your download plan is not the thing that is broken. Note that Sync's suggestion to use its desktop app for large uploads is service-specific advice, not a universal threshold.
Open Task Manager on Windows or Activity Monitor on macOS and sort by network use. Many sync apps also have a bandwidth limit setting. Capping them at 70 to 80 percent of your measured upload leaves room for everything else.
Step 4: Rule out the VPN
A VPN adds encryption overhead and sends your traffic through another server. If that server is busy or far away, your upload will swing with it. Disconnect it, test, and reconnect to compare. If the VPN is the cause, try a closer server, a different protocol, or split tunneling so that your uploads bypass it.
Step 5: Check for bufferbloat when speed and lag appear together
This is the cause people miss, and it explains the common complaint "my speed is fine but calls lag."
When a big upload fills the bottleneck, packets queue up in a buffer, and everything waiting behind them is delayed. The IETF's RFC 8289 on controlled-delay queue management describes how a full queue creates excessive delay for latency-sensitive traffic such as VoIP and gaming sharing the same link. The telltale pattern is upload dropping while latency spikes.
How to check it:
- Run a speed test that measures latency under load, not only idle ping.
- Compare idle latency with latency during the upload phase.
- If the loaded figure is many times higher, you have a queueing problem.
The usual remedy is smart queue management (SQM, often implemented with FQ-CoDel or CAKE) on your router. Check whether your router supports it; many consumer models offer it under QoS or "smart queue" settings, and OpenWrt-based firmware has it too. Be aware that it can lower peak throughput slightly because it deliberately limits the queue. Measure idle and loaded latency before and after, so you know whether the change helped.
For a deeper look at why metrics beyond Mbps matter, including how latency affects real-time work, see this piece on fixing latency in remote recording sessions. Musicians recording remotely hit the same wall as streamers do: a connection that tests well but cannot keep timing steady.
Step 6: Look at your hardware and your ISP
If Ethernet is erratic with nothing else running, test another device and another network, such as your phone's hotspot. If the hotspot is steady and your home line is not, the issue is in your modem, cabling, or provider.
Then check:
- The modem and router. Restart both. Old equipment, especially a modem that does not support your plan's technology, can cause erratic upstream behavior.
- Cables and splitters. On cable internet, a loose or damaged coax connection or a cheap splitter can cause intermittent upstream errors.
- The time of day. Run a test every hour for a day. If the dips line up with evenings, neighborhood congestion is likely.
- Outage status. Look at your ISP's outage page or app before you spend an hour on your own gear.
When several wired devices and several test servers show persistently low or near-zero upload, AVG's guidance is to ask the ISP to check upstream signal and channel status, account provisioning, local outages, and line errors. Bring your records. Useful ones include:
- Time and date of each test
- Wired or Wi-Fi, and the device used
- Upload and download throughput
- Idle and loaded latency, jitter, and packet loss
- Connection type: fiber, cable, DSL, fixed wireless, or mobile
The ITU treats throughput, delay, jitter, and packet loss as separate network-performance metrics, and describes loaded upload latency as a useful measurement. A support agent who sees all of them is far harder to brush off than one who hears "it's slow sometimes." Our test history feature saves results so you can show a trend instead of a guess.
If you stream: a steady test does not mean a steady stream
Streamers using OBS, vMix, XSplit, or Wirecast often chase a number that is not the real problem. Three things matter beyond the browser result.
Headroom. Hudl gives a planning rule: have available upload of twice your intended stream bitrate. A 6 Mbps stream needs 12 Mbps of available upload, as a sustained figure and not a one-time peak. Our Video Bitrate Calculator helps you pick a bitrate that fits your measured upload, and our piece on best internet for streaming covers headroom and latency targets.
The route to the platform. A speed test to a nearby server does not prove the path to your platform's ingest server is stable. YouTube's ingestion protocol comparison shows that RTMP and RTMPS suit normal to ultra-low latency streaming, while HLS and DASH support newer codecs but generally add latency. Confirm your protocol, server, encoder settings, and the platform's stream health page, and watch dropped frames and reconnects in your encoder.
Encoder load. Google's live encoding guidance notes that when real-time encoding runs below 1x, viewers can see buffering even though bandwidth is adequate. If your CPU or GPU is pinned, lowering the resolution, frame rate, or preset will help more than a new internet plan.

To watch your connection while you broadcast, use our Livestream Upload Speed Monitor. It shows whether your upload holds steady over time, which a single test cannot.
Perspective: stability matters more than the peak
We see the same mistake constantly. Someone runs a test, sees a number below their plan, and decides the ISP is cheating. Or they see one big number and decide everything is fine. Both are reading a snapshot.
Our view is that upload should be judged as a curve over the length of the task. A 30 Mbps upload that holds for an hour is better for a livestream than a 100 Mbps burst that falls to 8 after ten seconds. That is why we measure jitter, packet loss, bufferbloat, and DNS alongside throughput, and why we keep test history: patterns across days show things a single run hides.
In practice, we suggest a simple order. Establish a wired baseline. Remove competing traffic. Look at loaded latency. Only then talk to your ISP or consider a faster plan. Most fluctuation we see in tests traces back to the first three steps, and they are free.
— Peter D
Test it yourself
Run the GrandSpeed speed test over Ethernet, then over Wi-Fi, and compare upload, latency, jitter, and packet loss. If you broadcast, the Video Streaming Quality Test shows the highest resolution your connection can support, and the Internet/ISP Speed Recommender helps you judge whether your plan fits what you do. For a step-by-step walkthrough of upload testing, see our guide to running a free bandwidth test for upload speed and the longer explainer on why upload speed can be so slow.
FAQ
Is it normal for upload speed to vary between tests?
Some variation is normal because you are measuring a shared path at one moment. A spread of around 10 to 20 percent is common, as BroadbandSearch notes. Swings much larger than that, or drops to near zero, are worth investigating.
Why does my upload start fast and then drop?
The usual reasons are a queue filling at a bottleneck (bufferbloat), ISP-side shaping, or a background app that starts uploading. Compare latency during the test with idle latency. If latency spikes as the upload drops, look at your router's queue management settings.
Will a faster plan fix unstable upload?
Only if your wired, clean-path tests are steady but too low for what you do. If the speed is erratic, a bigger plan carries the same instability. Fix Wi-Fi, background traffic, and queueing first, and use the recorded results to decide.
When should I call my ISP?
Call when wired tests from more than one device stay well below your plan or repeatedly collapse, after you have restarted your modem and router and disabled your VPN. Share your timestamps and metrics, and ask them to check upstream signal, line errors, provisioning, and local outages.
Sources
- AVG: Why Is My Upload Speed So Slow?
- TalkTalk: Fix slow broadband speeds
- Hudl Support: Network Troubleshooting
- Meter: How to increase upload speed
- Sync Help Center: Troubleshooting slow upload and download speeds
- IETF RFC 8289: Controlled Delay Active Queue Management
- ITU: Quality of service and experience presentation
- YouTube Live Streaming API: Ingestion Protocol Comparison
- Google for Developers: Live encoding
- BroadbandSearch: Why Does My Internet Speed Fluctuate?
