DEV.co
Open-Source Observability · metaspartan

mactop

mactop is a lightweight, open-source terminal monitoring tool for Apple Silicon Macs that displays real-time CPU, GPU, memory, power, and thermal metrics without requiring root access. Written in Go with native macOS APIs, it offers 20 customizable layouts, Prometheus export, and a menu bar mode for system visibility.

Source: GitHub — github.com/metaspartan/mactop
1.5k
GitHub stars
65
Forks
Go
Primary language
MIT
License (OSI-approved)

Key facts

Objective fields from the source. Values we can't verify are shown as “Unknown” rather than guessed.

FieldValue
Repositorymetaspartan/mactop
Ownermetaspartan
Primary languageGo
LicenseMIT — OSI-approved
Stars1.5k
Forks65
Open issues2
Latest releasev2.1.5 (2026-06-14)
Last updated2026-06-25
Sourcehttps://github.com/metaspartan/mactop

What mactop is

mactop leverages Go + CGO to interface with Apple's SMC, IOReport, IOKit, and IOHIDEventSystemClient APIs for direct hardware telemetry on ARM64 Macs. It provides per-core CPU metrics (E/P/S-cores on M5+), GPU frequency/usage, DRAM bandwidth estimation, fan RPM, comprehensive temperature sensors, and optional Prometheus metrics export on a configurable port.

Quickstart

Get the mactop source

Clone the repository and explore it locally.

terminalbash
git clone https://github.com/metaspartan/mactop.gitcd mactop# follow the project's README for install & configuration

Need it deployed, integrated, or customized instead? DEV.co ships production installs.

Best use cases

Apple Silicon Performance Debugging

Developers optimizing macOS/iOS applications on M1–M5 Macs can monitor real-time CPU, GPU, ANE, and thermal behavior without CLI overhead or vendor tools.

System Resource Monitoring & Capacity Planning

DevOps and platform engineers can export metrics to Prometheus for long-term monitoring, alerting, and capacity trending on Apple Silicon infrastructure.

Headless & Scripting Automation

Automation engineers can run mactop in headless mode with JSON/YAML/CSV output to collect and log metrics programmatically for custom dashboards or CI/CD pipelines.

Implementation considerations

  • Installation via Homebrew simplifies deployment; binary builds from source are straightforward given only Go and optional CGO dependencies.
  • No root required for monitoring (SMC read-only APIs), but fan control (--fan-control) and Prometheus server port binding (< 1024) may require elevated privileges.
  • Configuration persists per user (layout, theme, interval); verify settings in config.json if reproducible behavior across restarts is critical.
  • Headless mode (--headless --format json) is stable for scripting; choose appropriate --count and --interval to balance data freshness vs. CPU overhead in loops.
  • Prometheus metrics endpoint exports >50 gauges; ensure downstream scraper and storage capacity match your sampling interval and retention SLA.

When to avoid it — and what to weigh

  • Intel/PowerPC Mac Legacy Support Required — mactop is Apple Silicon (ARM64) only and requires macOS 12.3+; it will not run on Intel Macs or older OS versions.
  • Graphical/Web Dashboard Requirement — mactop is terminal-based only; if your team requires a graphical web UI or remote dashboard, you must build custom integrations on top of Prometheus export.
  • Per-Process GPU Attribution at Scale — Per-process GPU usage is marked experimental; production workloads requiring precise per-app GPU accountability should verify accuracy before relying on it.
  • Fan Control Without Engineering Review — Fan control (--fan-control) writes directly to SMC and requires root; production deployment without thermal testing and failsafe limits is not recommended.

License & commercial use

mactop is licensed under the MIT License, a permissive OSI-approved license. MIT permits commercial use, modification, and redistribution provided the original license notice is retained.

MIT License permits commercial use without restriction. No licensing fees, vendor lock-in, or usage limits apply. Modification and redistribution (with license attribution) are allowed; review MIT terms for any bundling or SaaS use case to ensure compliance.

DEV.co evaluation signals

Editorial assessment — not user reviews. Directional, with an explicit confidence level.

SignalAssessment
MaintenanceActive
DocumentationStrong
License clarityClear
Deployment complexityLow
DEV.co fitStrong
Assessment confidenceHigh
Security considerations

mactop reads hardware metrics via Apple's public kernel APIs (SMC, IOReport, IOKit); no arbitrary code execution or privilege escalation vulnerabilities are known from the provided data. Fan control (--fan-control) writes to SMC under root; validate thermal logic and failsafes before production use. No network services exposed by default; Prometheus server is optional and should be firewalled if enabled. Dependency updates and OS API drift should be monitored.

Alternatives to consider

asitop (Andrey Sitnik)

Also a real-time Apple Silicon monitor in terminal; mactop adds more layouts, fan control, Prometheus export, and M5 S-core support, while asitop is lightweight and minimal.

Activity Monitor (macOS native)

Built-in system monitor with GUI; lacks per-core metrics, DRAM bandwidth, Thunderbolt monitoring, and programmatic export that mactop provides.

Prometheus + node_exporter (custom exporter)

Generic systems monitoring; mactop integrates Prometheus natively with Apple Silicon–specific metrics (ANE, E/P/S-cores, SMC temperatures, fan RPM) without external setup.

Software development agency

Build on mactop with DEV.co software developers

Deploy mactop via Homebrew today. Export metrics to Prometheus, script in JSON, or run headless for automation. No root required for monitoring.

Talk to DEV.co

Related open-source tools

Surfaced by semantic similarity across the DEV.co open-source index.

Related on DEV.co

Explore the category and the services that help you build with it.

mactop FAQ

Does mactop require root/sudo to run?
No, for monitoring (CPU, GPU, memory, temps, fans). Root is only required for --fan-control (writes to SMC) and binding Prometheus to ports < 1024.
Can I export metrics to Prometheus or cloud monitoring?
Yes. Use --prometheus <port> to enable a local metrics server, then scrape it with Prometheus. For cloud integrations, parse JSON headless output into your aggregation tool.
What Apple Silicon models are supported?
All ARM64 Apple Silicon chips (M1, M1 Pro/Max/Ultra, M2, M2 Pro/Max, M3, M3 Pro/Max, M4, M4 Pro/Max, M5, M5 Pro/Max/Ultra). Requires macOS 12.3+.
Is per-process GPU usage reliable for production?
It is marked experimental in the README. Verify accuracy against your workload before relying on it for billing, throttling, or alerting decisions.

Software developers & web developers for hire

Need help beyond evaluating mactop? DEV.co is a software development agency offering software development services and web development for teams of every size. Our software developers and web developers build custom software, web applications, APIs, and open-source observability integrations — and maintain them long-term.

Monitor Your Apple Silicon Mac in Real-Time

Deploy mactop via Homebrew today. Export metrics to Prometheus, script in JSON, or run headless for automation. No root required for monitoring.