In build · Mac + iPhone
Perch is a home Wi-Fi doctor for Mac and iPhone. The Mac reads the air around your home, counts the networks fighting for your channel and names the one to move to. Then it says which side of your router the delay formed on. Your network data stays on your network.
macOS 26.4+ · iOS 18+ · No account, no backend, no cloud
The card shows one example run: eleven networks share this Mac's channel, the round trip under load measured 4.2 ms inside the home network against 287 ms past the router, and the recommendation is channel 149. Perch prints what it measured on your own network, and says so when it could not measure something.
The problem
A call breaks up. A page hangs while somebody else is downloading. The line looks fine when you check it, so you restart the router and hope.
Every rival shows a device list and a speed test and never gives the answer. Perch gives the answer: the channel to switch to, and whether the fault is your Wi-Fi or sits past your router. It says so instead of guessing when it could not measure something.
The pair
They are separate build products because their distribution is incompatible. Between them they cover the two places you notice bad Wi-Fi: at the desk, and in the room where the signal dies.
The Mac holds the radio, so it is the only half that sees channels, neighbouring networks and your own signal. It runs the device list, the five checks, the verdict, the channel recommendation, the watch and export.
It ships outside the Mac App Store, signed with a Developer ID certificate and notarized by Apple. Raw network work is impossible under the App Sandbox that store requires, so a direct download is the only route.
Tap once and the phone measures the split between your home network and your provider, the delay under load, and the download figure it saw. No Mac, no pairing, no account.
Pair it with a Mac and it also shows that Mac's latest verdict, its live watch and its device list, read-only. The phone sends no commands.
The two halves are not equal. iOS gives a normal App Store app no signal strength, no neighbouring networks, no channel and no band, and it hands back a spoofed hardware address, so the phone can never name the makers of the devices on your network. Perch does not work around that platform limit. The Mac does the diagnosis instead.
What it measures
Each one answers a question you can act on. The channel clause is the product: reading the air without naming the fix is what the free tools already do.
How many networks are fighting for your channel, and which channel to move to
rf.cochannel
Whether your Mac's signal is strong enough where it is sitting
rf.signal
How busy the air is around your home, on every band, whether or not you are joined to it
rf.ambient
Whether the delay sits in your home network or past your router
net.split_path
Whether the link collapses when someone downloads
net.bufferbloat
Perch grades the delay your link picks up while it is busy, on the conventional scale: under 5 ms is an A+, under 30 ms an A, under 60 ms a B, under 200 ms a C, under 400 ms a D, and anything worse an F.
It is opt-in every run, because it fills your link with a download from Cloudflare's speed.cloudflare.com. It stops at 100 MB and spends around 25 MB on a typical home connection. You get both numbers before you agree.
While that transfer runs, Perch reports what it moved: the median of the transfer's consecutive 500 ms windows, to two significant figures. It grades nothing. No score, no threshold, no verdict, and no published range.
Perch reports what it moved, not what your line can carry.
The internet probe passes through your router. The gateway probe stops there. Perch compares the two to find which side the queue built on, and writes that out as a sentence you can read.
Sending you to your provider over a fault inside your own house is the worst mistake this product can make, so a busy router that answers its own probes slowly errs toward your side.
A run writes to a Markdown file wherever you choose to save it, with an optional pass that strips addresses and network names. Perch never picks the location and never transmits the file. Export gates on nothing.
The interface speaks English, Japanese, German, French and Spanish, across 317 strings.
The watch
Perch samples your link every 30 seconds for as long as you leave it running, draws the timeline as the samples land, and gives a verdict when the session ends. That verdict survives quitting the app, and a watch that ended because the battery ran low says so.
A stretch with no readings draws as a gap, never as a line through it. A line through a four-hour hole looks exactly like a healthy four hours, which is how a monitoring chart lies to you.
Free gets you one session, replaced by the next. Pro keeps 90 days. Alerts arrive while Perch is running and watching. There is no scheduling and no background service.
Honest limits
The limits are the product. A tool that hides where its measurement stops will hide the answer too.
Private by design
The Mac is the compute. No server of ours holds anything, because no such server exists.
Free and Pro
The verdict and the evidence behind it cost nothing, on both platforms; the Mac's channel recommendation costs nothing too. That leaves Pro to sell the second question rather than the first: is it getting worse, and when.
Nothing else is gated. Every check that ships declares itself free in its own source file, and export gates on nothing.
Both apps will be free to download. Pro is planned as a one-time lifetime purchase alongside a subscription. Nobody can buy it yet, the purchase path is unbuilt, and there is no price to print.
Not out yet
That is the whole list. No newsletter, no drip sequence, no "we have been thinking about you". Unsubscribe in one click if you change your mind.
One email · No spam · Unsubscribe anytime
We'll email you the day Perch is out. Nothing before that.
Questions
A home Wi-Fi doctor for Mac-and-iPhone households, built as two native apps that share one core. The Mac app reads the air around your home, runs five diagnostic checks and leads with one verdict in plain language: how many networks are fighting for your channel and which one to move to, whether your signal is strong enough where the Mac is sitting, and whether the delay sits in your home network or past your router.
The iPhone app measures on its own, and shows a paired Mac read-only.
You need a Mac for the whole product. The radio checks, the device list and the watch are all Mac-only, because the Mac is the half that holds the radio.
The iPhone app diagnoses with no Mac, no pairing and no account, so it earns its place by itself. Pair the two and the phone becomes the screen you check the Mac's latest verdict on when you are standing somewhere else in the house.
It measures the split between your home network and your provider, the delay under load, and the download figure it saw, and it draws the same live latency meter the Mac draws.
It cannot do radio. iOS gives a normal App Store app no signal strength, no neighbouring networks, no channel and no band, and it returns a spoofed hardware address, so the phone can never name the makers of the devices on your network. That is a platform limit, and Perch does not work around it.
The raw network work Perch does on the Mac is impossible under the App Sandbox the Mac App Store requires, so the Mac app is distributed directly: signed with a Developer ID certificate, notarized by Apple, delivered as a disk image.
The iPhone app ships through the App Store, sandboxed, because what it measures on the phone does not need that access.
Your network data stays on your network. Scan results, device addresses, network names, IP addresses and hostnames go into a database file on your own Mac, and the only other thing that ever reads them is an iPhone you paired yourself, across your own network, over TLS pinned to the certificate you approved by comparing six digits. Network names and BSSIDs never leave the Mac at all. There is no account and no backend.
Perch does reach the internet twice, and it says so before it does. The connection check opens and closes TCP handshakes to your router, to the DNS server your Mac is already configured to use, and to public resolvers. The bufferbloat check downloads from Cloudflare's speed.cloudflare.com. Those servers see your IP address, the same as any website you open, and Perch sends them no data of yours.
Every check that ships is free, but the Mac and the iPhone don't run the same five. The Mac runs all five; the iPhone runs the two that need no radio, whether the delay sits in your home network or past your router, and whether the link collapses when someone downloads. The verdict, the channel recommendation, the device list, the download observation, the live latency meter, one watch session, export and five languages are free as well.
Pro adds four things: 90 days of watch history on the Mac instead of one session, tonight compared against previous evenings on the same network, alerts while Perch is running and watching, and 90 days of diagnosis history on the phone. Both apps will be free to download. Pro is planned as a one-time lifetime purchase alongside a subscription, the purchase path is not built yet, and there is no price to announce.
Perch is in build. Neither app has been released and no date is set. Join the waitlist and you get one email the day it is ready to install.
Perch is in build for macOS 26.4 and iOS 18. One email when it is ready, and nothing else.
Join the waitlist