Hammerspoon vs SwiftBar
Price, platforms and features side by side. The table says where each price was read and when.
Where they differ
- Hammerspoon is free. SwiftBar is free.
- Hammerspoon also covers workflow automation and window management.
- SwiftBar also covers menu bar app.
In commonFree planmacOSOpen source
At a glance
| Hammerspoon | SwiftBar | |
|---|---|---|
| Pricing | Free | Free |
| Starts at | Free | Free |
| Free plan | The whole app is free and open source under the MIT license. The developers do not take donations and suggest giving to a charity instead. | The whole app is open source under the MIT license, downloaded from GitHub Releases or installed with Homebrew. No paid edition is listed; the repository carries a sponsor link. |
| Free trial | None listed | None listed |
| macOS | ||
| Made by | Hammerspoon contributors | Ameba Labs |
| Price read from | github.com | github.com |
| Checked | Oct 6, 2026 | Oct 9, 2026 |
Who each one suits
Hammerspoon
- Mac users comfortable writing Lua who want to script their own automation
- Custom window management driven by keyboard shortcuts
- Triggering actions from system events such as joining a Wi-Fi network
SwiftBar
- Mac users comfortable writing shell, Python or other scripts
- People who already have BitBar or xbar plugins
- Showing custom status readouts or quick actions in the menu bar
Worth knowing
Hammerspoon
- macOS only. Release 1.1.1 lists a minimum of macOS 13.0; older Macs need an earlier release.
- Out of the box it does nothing: every behavior has to be written in Lua in ~/.hammerspoon/init.lua or added as a Spoon.
- It depends on the macOS Accessibility permission, which the user has to grant by hand in the system's privacy settings.
- Crash information is collected by default; the FAQ says this can be turned off in the preferences.
SwiftBar
- macOS only; it runs on macOS Monterey (12) and later.
- It shows nothing by itself: every menu bar item needs a plugin script, taken from the plugin repository or written by the user.
- Every file in the plugin folder is imported as a plugin and made executable unless a .swiftbarignore file excludes it.
- Several preferences, such as hiding SwiftBar's own item, are not in the settings window and are set with Terminal commands.
Key features
Hammerspoon
- Lua bridge to macOS
- Extensions expose macOS APIs for applications, windows, screens, audio devices, batteries, clipboards, Wi-Fi, location and low-level keyboard and mouse events to Lua code.
- Hotkeys
- A keyboard shortcut can be bound to any Lua function, from showing a notification to running a series of window operations or an AppleScript.
- Window movement and layouts
- Scripts can move and resize the focused window, arrange several apps' windows into a saved layout across screens, and use window filters to act on groups of windows.
- Event watchers
- A configuration can react to application events, Wi-Fi network changes and USB devices, for example muting the volume when the Mac leaves the home network.
- Spoons
- Spoons are pre-made plugins, installed by double-clicking a .spoon file and loaded from the config. The official list includes an app launcher and a window switcher.
- Menu bar items and URL triggers
- Scripts can create menu bar items, draw on the screen and send iMessage or SMS messages, and other apps can trigger them through hammerspoon:// URLs.
SwiftBar
- Plugins are plain scripts
- Any executable script in the language of your choice becomes a menu bar item: the lines it prints before the first separator form the title, and the rest fill the drop-down menu.
- Refresh intervals and cron schedules
- A refresh interval goes in the file name, as in date.1m.sh, from milliseconds up to days. A metadata tag accepts cron syntax for one or several schedules instead.
- BitBar and xbar compatibility
- The plugin format is adopted from BitBar and xbar, so existing plugins for those run unchanged, and a Get Plugins menu item opens a bundled plugin repository.
- Formatting and click actions
- Per-line parameters set colors, fonts, SF Symbols, images, badges and tooltips, and make an item open a URL, run a script, show a web view or respond to a hotkey.
- Shortcuts and streaming plugins
- Beyond standard scripts, an Apple Shortcut can supply the menu content, ephemeral plugins create temporary items on demand, and streamable plugins stay running to push updates.
- URL scheme
- swiftbar:// links refresh, enable, disable or add plugins, post notifications and create temporary menu bar items, so other apps and scripts can drive it.
Plans
Hammerspoon
Hammerspoon$0
The complete app with every extension, as a direct download or a Homebrew cask. Open source under the MIT license.
SwiftBar
SwiftBar$0
The complete app with every plugin type and the bundled plugin repository. MIT licensed, with no license key or account.