Docs
How to use WhatCable, step by step. Requires a Mac with Apple Silicon (M1 or later) running macOS 14+.
- Getting started
- Everyday use
- WhatCable Pro
- Help & advanced
Install
WhatCable is signed and verified by Apple, so your Mac won't show any security warnings. You need macOS 14 (Sonoma) or later on a Mac with Apple Silicon (any M1, M2, M3, M4, or M5 chip).
Direct download
Download WhatCable.zip from GitHub, unzip it, and drag WhatCable.app into your Applications folder.
Homebrew
If you use Homebrew, one command does everything. This also installs the optional command-line tool.
brew install --cask darrylmorley/whatcable/whatcable
Getting started
Open WhatCable from your Applications folder. A small icon appears in your menu bar (the row of icons at the top-right of your screen, near the clock and Wi-Fi).
Click the icon. A panel drops down showing one card for each USB-C port on your Mac.
- If nothing is plugged in, each card says "Nothing connected."
- Plug in a cable, charger, or device, and the card updates automatically.
- Each card has a bold headline that tells you, in one line, what's going on with that port.
That's it. No setup, no account, no configuration. Everything updates in real time as you plug and unplug things.
What it shows
Each port card has a headline at the top. This is the quick answer to "what's plugged in here and is it working well?" Here's what each headline means:
- Nothing connected - the port is empty.
- Charging or Plugged in · battery full - a charger or power source is connected.
- Thunderbolt / USB4 - a high-speed device, dock, or daisy-chain is connected.
- Display connected or USB-C with video - a monitor is plugged in.
- USB device - a regular USB accessory (drive, hub, keyboard, etc.) is connected.
- Slow USB device or charge-only cable - the cable or device is limited to basic speed.
When a charger is attached, the headline adds the charger wattage (e.g. "96W charger"). If the cable is the weak link, it adds the cable wattage too, so you can spot the bottleneck at a glance.
Below the headline
Each card shows more detail depending on what's connected:
- Charging info: how many watts your Mac is drawing, and whether the cable, charger, or Mac itself is limiting the charge speed.
- Mid-session fault warnings: if a cable develops trouble while it's plugged in (a power overcurrent, or the connection dropping and coming back), a banner appears on the port. It catches faults that only show up once a cable is under load. Free for everyone.
- Speed info: a plain-English line explaining what's limiting the data speed, so you know whether a faster cable would actually help.
- Display info: when a monitor is connected, a one-line verdict on whether the link is carrying its full resolution and refresh, or falling short, and what's holding it back.
- Cable info: the cable's maximum speed and power rating, plus the manufacturer if known. If the cable matches one in the built-in cable database, the brand and model are shown too.
- Charger power levels: every wattage your charger can supply, with the one your Mac picked highlighted. Useful for checking whether a charger really supports the wattage on the box.
- Connected device: the name and type of whatever's plugged in at the other end.
- USB devices: any drives, hubs, or peripherals listed under the port they're connected to, with their speed.
Common questions
Is my cable any good?
Look at the port card when the cable is plugged in. If the charging and speed info match what you'd expect, the cable is fine. If WhatCable says the cable is limiting speed or charging power, trying a better cable would help. The app tells you exactly what's being held back.
Why is my laptop charging slowly?
Check the charging line on the port card. It tells you what's to blame:
- "Cable is limiting charging speed" - your cable can't carry the full power your charger offers. A higher-rated cable would fix this.
- "Charging at 30W (charger can do up to 96W)" - your Mac is choosing to draw less than the charger offers. This is normal when the battery is nearly full or the Mac is idle.
- "Charging well at 96W" - everything is matched. You're getting the best charge rate this setup can deliver.
What's an e-marker?
A tiny chip inside some USB-C cables that reports the cable's capabilities (speed, power rating, manufacturer) to your Mac. Not all cables have one. Shorter, lower-power cables often don't, and that's completely normal. High-speed cables (Thunderbolt, USB4) and high-power cables (100W and above) always have one.
Do I need a new cable?
Only if WhatCable shows the cable is holding something back. If the charging line says the cable is the bottleneck, a higher-rated cable would help. If everything shows "charging well" or the speed you expect, keep using what you have.
It says "Nothing connected" but I plugged something in
Try unplugging and re-plugging. Some cables and devices take a moment to be recognised. If it persists, the cable might not be making a solid connection, or the device might not identify itself (some simple chargers don't report anything over the data channel).
If a charger is plugged in (including MagSafe) but the port still shows as not connected, restarting your Mac usually fixes it. macOS occasionally doesn't expose a port's power data until the next reboot, and a restart restores it.
My Mac mini or Studio front USB-C ports don't show up
On Apple Silicon desktops, the front USB-C ports are standard USB behind an internal hub, not full USB-C ports with their own controller like the ports on the back. The Mac reports no cable, power, or charging data for them, so there's nothing for WhatCable to show. The back Thunderbolt ports work fully.
It says "Basic cable" with no details
This is normal for most everyday USB-C cables. Only higher-rated cables (Thunderbolt, USB4, or cables rated for 100W+) are required to have the chip that reports detailed info. Your cable still works fine, there's just nothing extra to report.
Charging diagnostics
When a charger is connected, WhatCable figures out what's limiting your charge speed and shows it clearly:
- "Charging well at 96W" - the cable, charger, and Mac are all matched. You're getting the best charge rate this setup can deliver.
- "Cable is limiting charging speed" - the cable can't carry the full power your charger offers. For example, a lower-rated cable on a 100W charger will cap you at 60W. Swapping the cable fixes this.
- "Charging at 30W (charger can do up to 96W)" - the Mac is choosing to draw less. This is normal when the battery is nearly full, the Mac is asleep, or macOS is managing battery health.
- "Battery full, not charging" - the Mac is plugged in but the battery is at 100%, so macOS has stopped drawing power to reduce wear. This is by design.
Below the charging line, you'll see the charger's power levels: every wattage the charger can supply (e.g. 5V, 9V, 15V, 20V), with the active one highlighted. This is useful for confirming whether a charger actually supports what it says on the box.
Cable trust signals
WhatCable checks a cable's reported data against the official USB specification. When something looks unusual, an orange banner appears with the details. This is not proof that a cable is fake or dangerous. It means something in the reported data doesn't match expectations.
Things that trigger a warning:
- The cable's manufacturer ID isn't on the official USB industry list. This is common on budget cables.
- The speed or power ratings fall outside the ranges allowed by the spec.
- Certain data fields are blank or set to placeholder values.
If a cable triggers a warning, it might still work perfectly well. Some budget cables use generic chips with placeholder data. The warning is there so you can make an informed decision, not to alarm you.
Notifications
WhatCable can send a notification whenever something is plugged in or unplugged. This is off by default. Turn it on in Settings.
When you enable it, macOS will ask for permission. Notifications are silent (no sound) and show the device name and speed for connections. They work even when the panel is closed.
Settings
Click the gear icon in the top corner of the panel to open Settings.
Behaviour
- Launch at login: start WhatCable automatically when you log in.
- Show in menu bar: on by default. Turn it off to run WhatCable as a regular Dock app with its own window instead.
Display
- Show technical details: shows the raw hardware data underneath each port card. Mainly useful for developers or when filing a bug report.
- Hide empty ports: only show ports that have something plugged in.
- Font size: make the text bigger or smaller (80% to 140%).
- Language: override the system language. 19 languages available: Deutsch, English, Español, Français, Italiano, Latviešu, Nederlands, Norsk Bokmål, Polski, Português (Brasil), Türkçe, Русский, Українська, हिन्दी, 日本語, 한국어, 中文 (简体), 中文 (繁體), and Հայերեն. Takes effect on next launch.
Notifications
- Notify on cable changes: get alerts when something is plugged in or unplugged.
Community
- Contribute Diagnostic Data: optionally submit anonymous hardware data to help improve the app. Nothing is sent unless you start a run yourself.
Pro
- Shows a link to upgrade if you don't have Pro yet. With Pro activated, this section has toggles for Pro-specific features.
Right-click menu
Right-click (or Control-click) the menu bar icon for quick actions:
- Refresh: re-scan all ports now.
- Keep window open: pin the panel so it stays visible. Useful for comparing cables or taking screenshots.
- Settings: open the Settings panel.
- Power Monitor Pro: open a live power chart window.
- Negotiation Diagnostics Pro: open the detailed breakdown of what each port negotiated.
- Licence: enter or manage your Pro licence key.
- Check for Updates: look for a newer version.
- Contribute Diagnostic Data: submit anonymous hardware data to help improve the app.
- About and WhatCable on GitHub: links to the project.
- Quit: close the app.
Pro features
WhatCable Pro is a one-time purchase that adds deeper diagnostics on top of everything in the free app. All free features stay free forever. Pro adds the following:
Diagnostics
Negotiation Diagnostics Pro
The free app gives a one-line summary of what's limiting a connection. Pro shows the full picture: what the Mac port, the cable, and the device each support, side by side with what was actually agreed, with the weak link highlighted. It also cross-checks the cable against the Thunderbolt controller to catch cables that under-report their capabilities. Each screen can pop out into its own window so you can keep it open while you swap cables.
Display Diagnostics Pro
The same weak-link idea, applied to video. WhatCable reads your monitor's capability and its live on-screen mode straight from macOS and compares them against what the DisplayPort link is actually carrying, so a screen stuck below its top resolution or refresh has an explanation you can act on. It shows the monitor's native and top modes, what the link is delivering, the lanes in use against those available, and the link rate. Because it reads the live mode, the resolution is right even on 5K and 6K displays, and when a screen reaches its top mode using compression (DSC) it confirms you're at full quality instead of guessing. If a USB-C to HDMI or DisplayPort adapter is in the chain, it names what the adapter reports itself as, which is often the real cap. It only says "not the cable" when the evidence shows it (a Thunderbolt tunnel, or every lane already in use), and otherwise points at the likely cause without crying wolf, since a shortfall can also just be the mode you have selected.
DP Alt Mode details Pro
When a monitor is connected over USB-C, see the lane count, link speed, and full display info (model, manufacturer, year). Shows whether the display signal is tunneled through Thunderbolt or running natively.
Cable history
Cable history Pro
Add a cable, give it a name, and WhatCable starts keeping a record of how it actually performs over time, not just a snapshot of the moment it's plugged in. It recognises the cable on later connections from its e-marker fingerprint and builds up a timeline: when you last used it, what it negotiated each time, and whether it has been misbehaving.
You get a saved-cables list, an all-time summary per cable (best and typical data speed, charging power, fault counts), and a verdict right on the port card so you don't have to dig. Cables you haven't added still get the live reading as before, they just aren't recorded. Localised in 18 languages.
Power & charging
Live power metering Pro
Real-time watts, amps, and voltage per port, updated every two seconds. See exactly what your cable is delivering right now, not just what was agreed on paper.
PD contract inspector Pro
See the full power delivery contract your Mac and charger agreed on: the active voltage and current, all available power profiles decoded, and any mismatches flagged.
Power monitor window Pro
A dedicated window with live charts showing watts and voltage over time. Pin it while you test a charger or cable under load and watch the numbers in real time.
PD event trace Pro
A timeline of what happened when a cable was plugged in: the negotiation steps, any resets, and the final agreement. Useful for diagnosing flaky connections.
Cable resistance estimation Pro
Estimates the electrical resistance of your cable in milliohms using real power samples. Useful for spotting worn or marginal cables before they cause problems.
Cable & port health
Port health counters Pro
Lifetime stats per port: how many times things have been plugged and unplugged, resets, electrical faults, and other wear indicators. See how a port has been treated over its lifetime.
Liquid detection Pro
Shows whether the moisture sensor inside a USB-C port has been triggered. Useful for diagnosing intermittent charging faults, especially after a spill.
CC advertisement level Pro
Shows what current level the port is advertising to connected devices. A deep diagnostic for power delivery debugging.
Raw cable identity Pro
The full data that the cable's chip reported, beyond the summary the free app shows. For developers and hardware engineers who need the exact fields.
In the terminal and on the desktop
CLI monitor mode Pro
whatcable --monitor streams live power and cable state to your terminal. whatcable --monitor-json outputs the same data as JSON for scripting.
TUI dashboard (CLI) Pro
A live full-screen terminal view of ports, power, and Thunderbolt, for the SSH and tmux crowd. Three screens: Overview, Negotiation, and Power. Tab cycles screens, arrow keys select ports, q quits. Run whatcable --dashboard.
The Negotiation screen breaks down each link: what the Mac port, cable, and device each support against what was actually negotiated, with the bottleneck called out in plain English.
The Power screen shows live draw per port with a small chart, system totals at the top, and a plain cable-health verdict: it watches how a cable behaves over the session and says so if one isn't performing.
Widget power sparkline Pro
The desktop widget shows a live power chart alongside cable status. Glance at your desktop and see charging trends without opening anything.
Troubleshooting
My cable shows as "Basic cable"
This is normal for most everyday USB-C cables. Only higher-rated cables (Thunderbolt, USB4, or cables rated for 100W+) are required to have a chip that reports detailed information. Your cable still works, there's just nothing extra to read.
Some cables do have the chip, but macOS only reads it when the connection needs the cable's identity: a charge drawing more than 3A (a 5A cable on a high-wattage charger), or a Thunderbolt / USB4 link. On a low-power charger or a plain data connection, macOS may never query the chip, so there's nothing to show even though the cable is marked. Try plugging in a higher-wattage charger (60W or above), or connect it to a Thunderbolt device, and check again.
Vendor shows as "Unregistered / unknown"
WhatCable looks up manufacturer names from the official USB industry list, which is bundled with the app. If the name isn't showing, it means the manufacturer either isn't registered or registered after this version of the app was built. It doesn't mean the cable is fake. The list is updated with each app release.
Doesn't work on my Intel Mac
WhatCable only works on Macs with Apple Silicon (M1, M2, M3, M4, M5). Intel Macs use a different USB-C controller that doesn't expose the cable data WhatCable reads. There's no workaround for this.
I can't see the icon in the menu bar
If your menu bar is full, macOS may hide the icon behind the notch or other apps. Try closing some menu bar apps, or switch WhatCable to Dock mode in Settings if space is tight.
Notifications aren't showing up
Check two things. First, make sure notifications are turned on in WhatCable's Settings. Second, go to macOS System Settings > Notifications > WhatCable and make sure alerts are allowed. If you clicked "Don't Allow" when first asked, you'll need to re-enable it here.
"Report this cable" isn't showing any data
The report feature needs data from the cable's chip to work. If no data was read, there's nothing to report. This happens when the cable doesn't have a chip (see "Basic cable" above) or macOS hasn't queried it yet. Try a higher-wattage charger (60W+) to trigger the read.
App opens but nothing appears
If you launch WhatCable and nothing shows up (no menu bar icon, no window), try these steps in order:
- Check the menu bar. The icon may be hidden behind the notch or other apps. Try closing a few menu bar apps and relaunching WhatCable.
- Quit and relaunch. Open Activity Monitor, search for "WhatCable", force-quit it if it's running, then open it again from Applications.
- Try the CLI. Open Terminal and run
whatcable. If that prints port data, the hardware access is working and the issue is with the menu bar UI. Include the CLI output when filing a bug report. - Collect diagnostic logs (see below) and include them in a bug report.
Collecting diagnostic logs
WhatCable logs key startup steps to the macOS system log. If the app isn't behaving as expected, these logs help us figure out where it gets stuck. To capture them:
- Quit WhatCable if it's running.
- Open Terminal (in Applications > Utilities).
- Paste this command and press Enter:
log stream --predicate 'subsystem == "uk.whatcable.whatcable"'
You'll see "Filtering the log data..." and then it waits. - Open WhatCable from your Applications folder.
- Wait a few seconds. Log lines will appear in Terminal showing what the app did during launch.
- Copy everything that appeared and include it in your bug report.
Press Ctrl+C in Terminal to stop the log stream when you're done.
Widget not appearing after an update
If the desktop widget disappears after updating WhatCable (especially via Homebrew), macOS may have stale references to the old version. This was fixed in v0.14.1, which re-registers the widget on every launch. If you're on 0.14.1 or later and the widget is still missing:
- Right-click the desktop, choose Edit Widgets, and remove the WhatCable widget.
- Quit and relaunch WhatCable.
- Add the widget again from the widget gallery.
Engineer mode
For developers, IT staff, or anyone who wants the raw data: hold Option and click the menu bar icon to show the underlying hardware properties for each port. This includes register values, protocol fields, and the full USB device tree.
You can also turn this on permanently in Settings ("Show technical details"). When a Thunderbolt or USB4 device is connected, this mode also shows the Thunderbolt link tree with per-lane speed and generation info.
Contribute data
You can optionally submit anonymous hardware data to help WhatCable support more Mac models and cable types. Nothing is collected in the background. A submission only happens when you choose to start one and approve it.
Three ways to start a submission:
- Right-click the menu bar icon and choose Contribute Diagnostic Data
- Open Settings and look in the Community section
- From a terminal:
whatcable --test-kit
Each method shows a consent screen first, explaining exactly what will be sent.
What is sent
- Hardware data from your Mac's USB-C ports (the same data the app reads, in raw form).
- Your macOS version and chip type (e.g. Apple M3 Pro).
- A scrambled version of your Mac's ID, used only to group the data together. The actual ID is never stored.
What is not sent
- No names, email addresses, serial numbers, or personal data.
- No analytics or background tracking. The only network request WhatCable makes on its own is a six-hourly update check.
- Running it again from the same Mac replaces your previous submission rather than adding to it.
Good to know
- WhatCable checks for updates once every six hours. No analytics, no tracking. See the privacy policy.
- WhatCable reads data from the Mac's USB-C port, the connected device or charger, and the cable itself, so it can cross-check what each part of the chain reports. If a cable claims high specs but the negotiated result is lower, WhatCable will show you where the mismatch is.
- The cable database is built from community-reported cables. If yours isn't listed, use "Report this cable" in the app to contribute.
- WhatCable includes a command-line tool for developers. It ships inside the app and is on your PATH automatically if you installed via Homebrew.