Stop Stutter: a macOS menu bar tool that turns AWDL off while you stream games
Smoother game streaming on Mac. Automatic AWDL boost for Moonlight, GeForce NOW, Punktfunk, Parsec & Steam Link. Native SwiftUI + Liquid Glass. MIT.
At a glance
- What is it?
- Stop Stutter automates a long-standing Moonlight workaround: while a selected streaming app runs, a helper repeats ifconfig awdl0 down once a second. It is a narrow utility for Mac users whose stutter traces back to peer-to-peer Wi-Fi, not a general network tuner.
- Who is it for?
- Adopt Stop Stutter if you stream games on a Mac over Wi-Fi and you want the AWDL workaround without retyping ifconfig commands. Do not adopt it if you rely on AirDrop or peer-to-peer AirPlay during play sessions, or if your stutter comes from router congestion, packet loss or decoding rather than AWDL.
- Can I use it commercially?
- Yes. MIT is a permissive licence: you can use, modify and sell software built on it, as long as you keep its copyright and licence notices.
- Is it still maintained?
- Yes. The repository last received commits 3 days ago.
- What is it written in?
- Mainly Swift, according to GitHub's language statistics.
Answers come from the project's GitHub data, last synced on September 30, 2026, and from our analysis. They are not legal advice.
Editorial analysis
The problem Stop Stutter targets: AWDL sharing one Wi-Fi radio with your stream
Apple Wireless Direct Link is the peer-to-peer interface behind AirDrop and related Continuity features. The README's explanation is that it shares the Mac's Wi-Fi radio with the connection to your router, and that its discovery and communication schedule can move the radio to another channel while normal packets wait. The repository points to AWDL research for the channel-switching mechanism and to an Apple developer forums thread for the claim that peer-to-peer Wi-Fi can add latency to infrastructure traffic.
Why that matters for games specifically: a download can buffer and catch up, but a stream has to deliver frames, audio and input on a schedule. The README frames the target as jitter, the variation in packet arrival time, and states plainly that a stream can receive plenty of data overall and still receive some of it too late. It also states that router congestion, packet loss, decoding and display timing can cause stutter independently of AWDL. That sentence is the honest boundary of the tool, and it is the first thing to keep in mind.
The intended user is narrow: someone streaming from a PC or cloud service to a Mac over Wi-Fi, seeing recurring hitches despite good bandwidth, who would otherwise be running a Terminal command by hand. Moonlight users have reported this for years, and the README links that issue thread as the origin of the workaround.
How the boost mechanism works: one-second enforcement of awdl0 down
The mechanism is deliberately blunt. While Boost is on, a helper repeats `/sbin/ifconfig awdl0 down` every second, because macOS can reactivate the interface on its own. Your regular Wi-Fi connection stays enabled; only the peer-to-peer interface is controlled. In Auto mode, AWDL is brought back after the last watched app quits, so Apple sharing resumes.
Three modes exist. Always on holds AWDL off. Off stops boost. Auto follows your selected apps. The README describes the state labels in some detail: green Boost is ON means a verified active session, blue OFF / Auto waiting means it is ready for the next app launch, and gray OFF / Paused means automation is disabled. Setup, transitions and errors have their own labels.
App detection works through presets for Moonlight, GeForce NOW, Punktfunk, Parsec and Steam Link, which the README says identify the native clients automatically. You can add other `.app` bundles from Applications, and the README notes that existing selections stay yours while missing presets appear under More apps to boost. The README is explicit that preset support means automatic app detection, not a measured performance gain for each client.
That one-second loop is the whole design, and it is worth being clear about what it implies: the tool is not measuring anything. It does not inspect packet timing or decide whether AWDL is your problem. It assumes the diagnosis and removes the suspected cause for as long as you say so.
Installing Stop Stutter and running a first real comparison
The README points to the releases page as the download location, and the badge in the header requires macOS 14 or later. There is no Homebrew formula or package manager command documented in the README, so installation is the release build from GitHub.
The README also documents a source build path, and the repository layout supports it: there is a Package.swift at the top level alongside Sources, Tests, Resources and scripts. If you prefer to build rather than download, the Swift Package manifest is the entry point:
swift buildWhat you should see is a compiled product from the Sources tree; the README's Build from source link is the place to check for any additional steps, since the README does not spell them out.
Once installed, the README's own validation procedure is the first real use, and it is worth following literally. Open a repeatable scene in your streaming client over Wi-Fi, and keep resolution, bitrate and network setup identical between runs:
1. Open a repeatable scene in your streaming client over Wi-Fi.
2. Keep resolution, bitrate, and network setup the same.
3. Compare Off with Always on in Stop Stutter.What you are looking for is recurring hitches, and, if your client exposes them, network-latency variation and dropped-frame statistics over comparable intervals. If the difference shows up, the README suggests switching to Auto so your selected apps control Boost. If it does not show up, the README's own framing says AWDL was probably not your cause. The app runs without a Dock icon; closing the main window leaves boost working, and the menu bar icon reopens it.
The trade-offs: AirDrop, AirPlay and the apps Stop Stutter cannot help
The README states the trade-off directly: AirDrop, peer-to-peer AirPlay and some Continuity features may be unavailable during Boost. AWDL is restored when Boost ends, so this is a session-scoped loss rather than a permanent configuration change, but it is a real one if you AirDrop screenshots or hand off media while playing.
The larger limitation is diagnostic. Stop Stutter automates a workaround for one suspected cause of stutter. The README lists router congestion, packet loss, decoding and display timing as independent causes, and none of them are addressed by disabling `awdl0`. If your Mac is on Ethernet, or your access point is the bottleneck, or your client is dropping frames because of the decoder, this tool will change nothing and the one-second loop will run for no benefit.
There is also an honesty problem in the wider ecosystem that this project handles better than most. The README labels its own diagrams as conceptual and illustrative rather than measured, and it states that preset support is detection, not a per-client performance claim. It points to docs/VALIDATION.md for what has actually been tested. That file is the document to read before you repeat any claim about how much the boost helps, because the README does not put a number on it.
How Stop Stutter differs from manual ifconfig scripts and from network tuning tools
The obvious alternative is doing it yourself. The workaround predates this app: run `sudo ifconfig awdl0 down` in a Terminal before you play, and bring it back afterwards. The README's own framing of the difference is that Stop Stutter removes the need to repeat Terminal commands and to remember a setting after every game. That is the entire value proposition, and it is worth being honest that it is a convenience wrapper rather than a new technique.
A shell script or a launch agent can approximate the same thing, and for a single game on a fixed schedule it may be enough. What Stop Stutter adds is app-driven state: presets that detect the native clients, an Auto mode tied to the last watched app quitting, a menu bar presence, and status labels that distinguish an active session from a paused one. If you already have a script you trust and you never forget to run it, the app is not buying you much.
A different category of alternative is measuring and tuning the network itself: inspecting your access point, moving to a 5 GHz or 6 GHz channel, or using your streaming client's own statistics overlay to find where loss occurs. Those approaches attack causes this tool cannot touch. The two are complementary rather than competing, and the README's validation steps effectively ask you to do the measurement work anyway before concluding that AWDL was the culprit.
Maintenance, licence and what a fork would inherit
The repository is not archived, and the last push was on 2026-09-09. The only release in the repository is v0.1.0, published on 2026-09-04. That is a young project with a single tagged version, so the practical upgrade cost today is low: there is not yet a long chain of migrations to absorb, and the version number suggests the interface and behaviour can still move.
The licence is MIT, which permits use, modification and redistribution provided the copyright notice and permission notice are preserved. This is not legal advice, but the practical implication for an engineering team is that vendoring the source or shipping a modified build is permitted under the same terms, and there is no copyleft obligation to publish your changes. The repository also carries SECURITY.md and CONTRIBUTING.md at the top level, so there are stated channels for reporting problems and sending changes.
One maintenance consideration specific to this design: the tool depends on `awdl0` existing and on macOS continuing to reactivate it, which is why the helper loops every second. If Apple changes that behaviour, the loop becomes either unnecessary or ineffective, and the README's description of it would need to change. Because the app targets macOS 14 and up and uses Liquid Glass on macOS 26+, it also carries two rendering paths to maintain across OS versions.
Editorial conclusion
Adopt Stop Stutter if you stream games on a Mac over Wi-Fi and you want the AWDL workaround without retyping ifconfig commands. Do not adopt it if you rely on AirDrop or peer-to-peer AirPlay during play sessions, or if your stutter comes from router congestion, packet loss or decoding rather than AWDL. Before trusting it, run the README's own comparison: hold one repeatable scene and the same bitrate, switch between Off and Always on, and watch the client's dropped-frame and latency-variation counters. Also read docs/VALIDATION.md, which the README says separates verified app behaviour from performance measurements. If your numbers do not move, the tool is not the fix.
Frequently asked questions
How do I stop stuttering in games on a Mac with Stop Stutter?
Install the release build, add or keep your streaming client among the presets, and let Boost run while you play. The README recommends comparing Off with Always on in a repeatable scene at identical resolution and bitrate, and watching the client's latency-variation and dropped-frame statistics.
What is Stop Stutter and what does Boost actually change?
It is a native macOS menu bar app that automates an AWDL workaround for game streaming. Boost ON means AWDL OFF: a helper repeats /sbin/ifconfig awdl0 down every second while your session runs, and AWDL is restored when Boost ends.
How do I stop stuttering in Valorant streamed to a Mac?
The README documents no Valorant-specific support. Its method is generic: stream over Wi-Fi, hold a repeatable scene at the same resolution and bitrate, compare Off with Always on, and check whether latency variation and dropped frames improve before switching to Auto.
Does Stop Stutter work with Fortnite streamed over Moonlight or GeForce NOW?
The README does not name Fortnite. It states that the presets identify the native streaming clients automatically and that you can add any .app bundle from Applications, so the game itself is not what the app watches.
How do I stop stuttering when nervous during a stream?
Stop Stutter addresses network jitter from AWDL, not nervousness. The README's scope is game streaming over Wi-Fi: it disables the awdl0 interface while a selected app runs and restores it afterwards.
What can stop stuttering caused by AWDL on a Mac?
According to the README, disabling the awdl0 peer-to-peer interface can reduce latency spikes and uneven frame delivery when AWDL is the cause. Stop Stutter automates that by repeating /sbin/ifconfig awdl0 down every second while Boost is active.
Official sources
Add this badge to your README
If you maintain this project, the badge below links readers to this analysis and shows its maintenance status from the daily GitHub snapshot. Paste the markdown into your README; add ?metric=license or ?metric=stars to the image URL for a different field.
[](https://hysenlabs.com/projects/burakgon-stop-stutter)