SketchyBar app icon

SketchyBar

github.com

A scriptable, open-source macOS status bar replacement with event-driven plugins, dynamic items, graphs, popups, and full mouse interaction support.

SketchyBar screenshot showing the app interface

SketchyBar is a free, open-source macOS status bar replacement that enables users to build a fully custom menu bar through shell scripts and a plain-text configuration file. (Free, open-source)

All bar elements are defined declaratively: users add items with properties such as icon, label, background color, padding, and click scripts, then group them into named components. Items can be added, removed, and modified at runtime without restarting the bar, which supports workflows where the bar adapts to the currently focused app or active task. The event-driven system listens for macOS system events — app focus changes, volume adjustments, display reconnects, calendar notifications — and triggers shell callbacks to update bar content automatically.

SketchyBar supports popup menus, allowing items to expand into floating panels with nested child items. The alias feature renders live copies of native macOS menu bar icons (Wi-Fi, battery, Bluetooth, third-party app icons) inside SketchyBar while retaining their original click behavior, so existing menu bar app functionality is not lost. A built-in graph component plots numeric data streams (CPU load, memory pressure, network throughput) as smooth bar or line graphs directly in the status bar. The project ships default plugins as a starting point; community configurations with hundreds of variants are shared in the official GitHub Discussions thread.

System requirements: macOS 11 Big Sur or later. Installed via Homebrew (brew tap FelixKratz/formulae && brew install sketchybar). Requires “Displays have separate Spaces” enabled in System Settings > Desktop & Dock. No App Store distribution; source code available at github.com/FelixKratz/SketchyBar.

Pricing: (Free, open-source) — GPL-3.0 license. Over 11,700 GitHub stars as of May 2026.

Limitations: Configuration requires shell scripting knowledge; no graphical settings panel is provided. The macOS native menu bar must be hidden via System Settings to avoid overlap. Configuration files require manual adjustment when the SketchyBar API changes between major versions. High plugin update frequency (many community scripts poll system data every second) can increase CPU usage if scripts are inefficiently written.

Alternatives: SwiftBar and xbar (both included in this directory) offer a simpler plugin model based on script output rather than full bar replacement, making them accessible without configuration expertise. Übersicht provides a widget-based approach to desktop and status bar customisation using web technologies.

Suitable for users who want complete, code-driven control over their macOS status bar layout, content, and interactivity, and who are comfortable editing shell scripts and configuration files.

FAQ

What does SketchyBar do?+

SketchyBar replaces the macOS status bar with a fully configurable alternative. All bar elements — icons, labels, graphs, spaces indicators, and popup menus — are defined in a configuration file and controlled via shell commands and scripts.

Is SketchyBar free?+

Yes. SketchyBar is free and open-source under the GPL-3.0 license. It is available on GitHub and installable via Homebrew at no cost.

How do I install SketchyBar on macOS?+

Install via Homebrew: run 'brew tap FelixKratz/formulae' then 'brew install sketchybar'. Requires macOS 11 Big Sur or later. After installation, enable 'Displays have separate Spaces' in System Settings > Desktop & Dock, then start the service with 'brew services start sketchybar'.

Does SketchyBar run on Apple Silicon?+

Yes. SketchyBar runs natively on Apple Silicon (M1, M2, M3, M4) and Intel Macs, and is compiled as a universal binary.

Can SketchyBar display icons from existing macOS menu bar apps?+

Yes. SketchyBar supports 'aliases' — a feature that embeds the live render of native macOS menu bar items (such as Wi-Fi, battery, or third-party app icons) directly into the SketchyBar layout, preserving their click interactions.

Does SketchyBar support animations and graphs?+

Yes. SketchyBar includes a built-in animation system and native graph drawing. Items can animate position, opacity, and color changes, and real-time data such as CPU or network usage can be visualised as bar graphs within the status bar.

Related Apps