Announcing ngrok-go: embed ngrok into your Go apps as a net.Listener. Learn more

Your app online

with one command

ngrok is a simplified API-first ingress-as-a-service that adds connectivity,
security, and observability to your apps in one line

ngrok http 80
ngrok http 80 --oidc= --oidc-client-id=[id] --oidc-client-secret=[secret]
ngrok http 80 --oauth=google --oauth-allow-domain=[]
ngrok http 80 --oauth=github --oauth-scope=repo
ngrok http 80 --verify-webhook=slack --verify-webhook-secret=[secret]
ngrok http 80 --cidr-allow $(curl
ngrok http 80 --request-header-add "country: \${.ngrok.geo.country_code}"
ngrok http 80 --response-header-add "content-security-policy: self;"
ngrok http 80 --mutual-tls-cas=[root-ca.pem]
ngrok tcp 22
ngrok http "file://$(pwd)"

Trusted by over 5 million developers and recommended by the best teams

ngrok Cloud Edge

Bring security, scalability, and observability to your apps with ngrok's network edge. No code changes required.


Publish services hosted anywhere to the internet in seconds


Add SSO, mTLS, and automated certs without changing code


Make your apps resilient with dynamic load balancing

ngrok Secure Tunnels

Instant access to any system without network pain.
No dynamic DNS, port forwarding, and VPNs required.


Put localhost on the internet securely. Introspect and replay requests for a tight feedback loop

Universal Connectivity

Connect to any system regardless of network or location

Zero Firewall Friction

Connect into customer networks. No time wasted on firewall rules, VPNs, or change requests

API-first infrastructure built for global scale

  • Role Based Access Control
    Single Sign-On
    SIEM Integrations
    SOC 2 Compliance

  • Native SDKs
    Terraform Provider

  • Global Infrastructure
    Enterprise Support
    Resiliency Controls

  • CLI Integrations
    IDE Integrations
    Active Community
    ngrok Embedded in your platform

Get Started with ngrok