ngrok

ngrok, Inc. · Expose local and private services through secure public endpoints, with traffic policies, inspection, and request replay for development and connectivity.

CaskNetworkingApple silicon · Intel
From homebrew/cask
30-day installs9,435#22 in App
1-year installs393.6KLast 365 days
Latest version3.39.11Jan 1, 1 · Jan 1, 1
Download size11MBarm64 / x86_64 · zip
Release cadenceEvery 2 weeks0 releases in 30 days

About

ngrok is a command-line agent that connects local or private services to the ngrok cloud network through an outbound encrypted connection. It provides public endpoints without requiring inbound firewall changes or a public IP address on the origin machine. Developers use it for app previews, webhook testing, API development, and controlled access to services behind NAT or firewalls.

Main features

  • Expose local HTTP and HTTPS services through public endpoints and forward traffic to a chosen upstream port.
  • Create TCP or TLS endpoints for supported non-HTTP use cases, subject to your account entitlements.
  • Apply Traffic Policy to authenticate requests, route traffic, rewrite requests, or rate-limit access before reaching the upstream.
  • Inspect HTTP traffic and replay captured requests to debug webhooks and reproduce failures.
  • Configure endpoints and agent behavior in a configuration file, automate supported commands, or run the agent as an OS service.
  • Use one outbound TLS connection on port 443 to carry traffic from ngrok's network back to the origin.

Installation and first use

Install brew install --cask ngrok. The package installs the ngrok executable and shell completions, not a graphical Mac application. Create an ngrok account, obtain your own agent authtoken, and configure it with ngrok config add-authtoken <YOUR_AUTHTOKEN>. Start your local app, then run ngrok http 8080, replacing 8080 with its listening port. Use the endpoint printed by the agent. The endpoint created by this agent exists while the agent session runs; a separate Cloud Endpoint has different lifecycle behavior.

Requirements, dependencies, and conflicts

The standalone agent has no external runtime dependency. Homebrew declares no extra formula dependency, no explicit cask conflicts, and no explicit macOS version minimum in this snapshot. It provides separate native downloads for Apple Silicon and Intel Macs. That metadata does not establish support for every historical macOS release; consult the vendor download page for compatible builds.

The vendor documents 64 MB minimum memory, 128 MB recommended, and approximately 25 MB disk; actual resource usage grows with concurrent traffic. These are runtime guidance, not the compressed download size. Your upstream application must be running and reachable from the agent. Internet access and outbound TLS connectivity to ngrok are required for cloud endpoints; corporate proxy, firewall, or account controls can affect connectivity.

Separate official agent builds support macOS x86-64/arm64, Windows x86-64/x86, Linux across x86, ARM, MIPS, PowerPC and s390x families, and FreeBSD x86-64/x86/ARM. Download the appropriate build rather than using the Mac ZIP on another OS. Agent SDKs, containers, and reverse SSH are separate deployment choices. Tools used by the upstream service keep their own requirements.

Accounts, costs, and license

Using the ngrok cloud agent requires an account and agent authtoken. A free plan is available with limits; paid or usage-based plans provide different allowances and features. Domains, authentication options, endpoint protocols, traffic retention, and usage charges depend on the current plan. Downloading the binary does not make every ngrok service feature free or unlimited.

The current agent and cloud service are governed by ngrok's Terms of Service. The modern distributed agent is not the old open-source ngrok v1 project. The official community repository is used for feedback and issue tracking; it is not the full source of this agent. Open-source SDKs and other ngrok components have their own licenses.

References: macOS download, agent installation and requirements, agent overview, traffic inspection, pricing, and terms.

New What’s new in 3.39.11 Jan 1, 1 · OpenNavo editorial

  • DependenciesUpdate ngrok-go to 2.1.1.

An open-source interface for Homebrew. Installs run through the macOS app or the brew command.

© 2026 OpenNavo