Show ping latency in your Mac menu bar

When a call stutters or a game lags, the first question is whether it’s you. This meter pings a host three times every 10 seconds and shows the average round trip, as a graph if you like.

Recipe tested October 29, 2026 with Multimeter 1.1. Source: Script.

Preview: the Oscilloscope face and two alternatives, with sample values like the ones this recipe returns.

What you need

  • Multimeter for macOS 13 or later, $19.99 once.
  • The direct download version of Multimeter from this site (the Script source isn’t in the Mac App Store version).

Set it up

  1. Try it in Terminal:
    Command
    ping -c 3 -q -t 5 1.1.1.1 | awk -F/ '/round-trip/ {print $5}'
  2. Add a Script meter with the command, refreshing every 10 seconds.
  3. Set the range to 0 to 200, unit ms, and alerts to High values: warning at 80, critical at 150.

Multimeter settings

In Customize This Meter… (from the meter’s menu):

Settings for this meter
SettingValue
SourceScript
Commandping -c 3 -q -t 5 1.1.1.1 | awk -F/ '/round-trip/ {print $5}'
Refresh every10 seconds
Range0 to 200
Unitms
AlertsHigh values: warning 80, critical 150
LabelPING
FaceSparkline, Oscilloscope or Heat Strip

Tested: Run on October 29, 2026: 15.883 ms to 1.1.1.1 and 43.276 ms to the Wi-Fi router, about 2 seconds per run.

Script meters need the direct download version of Multimeter from this site, which is the one on sale now. How commands run, the PATH they see and the 10 second limit are in the Script meters guide.

Limits

  • Three pings take about two seconds; -t 5 stops it after five if the host doesn’t answer, so the meter shows that it got no number.

Variations

Your router (is it the Wi-Fi or the internet?)

Command
ping -c 3 -q -t 5 $(route -n get default | awk '/gateway/ {print $2}') | awk -F/ '/round-trip/ {print $5}'

Packet loss in percent

Use the % unit and alerts on High values at 5 and 20.

Command
ping -c 5 -q -t 6 1.1.1.1 | awk '/packet loss/ {print $7}'

Troubleshooting

What the meter says, why, and what to do
SymptomCauseFix
The script didn’t print a numberThe command failed or printed an error message instead.Run the exact command in Terminal. If it works there, check for tools that live outside the meter’s PATH and use their full path (which tool).
The script took longer than 10 secondsA slow network call. Multimeter stops scripts after 10 seconds.Keep the -m timeout on curl, and refresh less often.
Scripts need the version from multimeterapp.comThis copy of Multimeter came from the Mac App Store, which can’t run scripts.Use the direct download version, or run the command from cron or launchd and point a File meter at its output.
The meter shows no number while you’re offlineNo reply means no round trip to print.That is the signal. Add the packet loss variation if you want a number at 100% instead.

Questions

Does this work in the Mac App Store version?

Script meters need the direct download version from multimeterapp.com, because the App Store sandbox doesn’t let apps run your commands. Web Address, File and Sent Value meters work in every version.

Which host should I ping?

1.1.1.1 or 8.8.8.8 for the internet, your router for the local network, or your own server for its path.

Related

Put it in your menu bar

$19.99 one-time. No subscription. Needs macOS 13 Ventura or later.