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).
- Multimeter 1.1.1 or later. Earlier versions can’t ask macOS for permission to talk to other apps. Choose Check for Updates… from any meter’s menu.
- Things 3 for Mac from Cultured Code.
Set it up
- Here’s the command. It counts the open to-dos in Today (This Evening included) and leaves out ones you’ve already checked off:Command
osascript -e 'if application "Things3" is running then' -e 'tell application "Things3" to return count (to dos of list "Today" whose status is open)' -e 'else' -e 'return "{\"value\": 0, \"formatted\": \"closed\"}"' -e 'end if' - In Multimeter, choose Add Meter… from any meter’s menu, pick Script and paste the command.
- Set Refresh every to 1 minute, the label to
TODAYand the range to 0 to 10 (or the most you plan in a day). - Pick a face. Label & Value and LCD Readout show the number; Tally Marks draws one mark per to-do.
- With Things open, wait for the first refresh. macOS asks once: “Multimeter” wants access to control “Things”. Allowing control will provide access to documents and data in “Things”, and to perform actions within that app. Below it is Multimeter’s reason: “Multimeter runs your script meters, and scripts that read other apps (like Things, Reminders, Mail or Music) need your permission to control them.” Click Allow. Until you do, the meter shows a dash; the number appears at the next refresh, or right away with Refresh Now in the meter’s menu.
Multimeter settings
In Customize This Meter… (from the meter’s menu):
| Setting | Value |
|---|---|
| Source | Script |
| Command | the osascript line above |
| Refresh every | 1 minute |
| Range | 0 to 10 |
| Alerts | Off, or High values with a warning at the most you can really do in a day |
| Label | TODAY |
| Face | Label & Value, LCD Readout or Tally Marks |
| Width | 120 pt for Label & Value |
Tested: Set up on October 31, 2026 in Multimeter 1.1.1 on macOS 27 with Things 3.24.1 (trial). Today held 3 open to-dos and 1 checked off; after Multimeter was allowed to control Things the menu bar showed TODAY 3 in Label & Value and LCD Readout, and TODAY 4 at the next refresh after a to-do was added to Today. With Things quit both meters showed closed and Things stayed closed. The command took about half a second when run in Terminal. Once the permission ended up off (the prompt went away without Allow): the meter showed a dash until we turned Things on under System Settings, Privacy & Security, Automation, Multimeter, and the number came back at the next refresh.
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
- Things must be open. That’s on purpose: asking a closed Things would launch it.
- Without
whose status is open, Things also counts to-dos you checked off today until they move to the Logbook, so keep that part.
Variations
Inbox or Upcoming
Replace "Today" with "Inbox", "Upcoming" or "Anytime" to count a different list.
One project or area
Replace list "Today" with project "Launch" or area "Work", using the name as it appears in Things’ sidebar.
Troubleshooting
| Symptom | Cause | Fix |
|---|---|---|
| The meter says closed | Things isn’t running. The command skips Things when it’s closed so it never launches it. | Open Things. The number shows at the next refresh. |
| The meter shows a dash while Things is open | Multimeter isn’t allowed to control Things: you clicked Don’t Allow, or the question is still waiting on screen (the script stops after 10 seconds while it waits). | Answer the prompt if it’s open. If you turned it down, open System Settings, Privacy & Security, Automation, click the arrow next to Multimeter and turn on Things. The next refresh shows the number. |
| Works in Terminal, nothing in the meter | Terminal and Multimeter each need their own permission. Allowing Terminal to control Things doesn’t allow Multimeter. | Look for Multimeter, not Terminal, under System Settings, Privacy & Security, Automation, and turn on Things there. |
| The script didn’t print a number | The 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 seconds | A 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.com | This 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. |
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.
Can it count Apple Reminders due today instead?
We tried. Reminders answers AppleScript quickly with a handful of reminders, but in our tests with a few hundred (most of them completed, as any long-used list ends up) one count took 10 to 14 seconds, past the 10 second limit for Script meters. So there’s no Reminders recipe here.
And the next Calendar event?
Same problem: Calendar’s AppleScript slows down as a calendar grows, and one with 400 past events took 15 to 22 seconds to answer in our tests. Use a Countdown meter for a fixed date, or have a calendar tool you already use write the time to a file for a File meter.
Does Multimeter change anything in Things?
Not with this command. It only counts. The permission macOS asks for would allow changes, because it covers any script you write, so read any script before you paste it.