Stagepass

Compare · Do it yourself

Stagepass vs. Local dev server and tunnel.

Many developers start with a script tag that points at a local dev server or a tunnel. It works, with trade offs around who loads the file and what the browser allows.

The short answer
DSLocal dev server and tunnel
Do it yourself

Made for You already run a dev server, you test on a staging copy anyway, and a short lived tag in a published site is fine.5

SpStagepass
CLI and loader

Made for Local files only in your own browser, on the live URL, while every visitor keeps production.

  • Who loads the local file Dev server and tunnelEveryone who opens the page with the tag1 StagepassOnly your browser2
  • Browser and tunnel Dev server and tunnelLocal network prompt, tunnel interstitial13 StagepassNo tunnel, local HTTPS on .sp4
  • Going live Dev server and tunnelSwap the URL, publish again5 StagepassBump the version, no republish6

See both workflows side by side

Workflow

The same job, step by step.

If you work with Dev server and tunnel today, its steps are your usual flow. Next to each one is the same job with Stagepass.

DSWith Dev server and tunnel
SpWith Stagepass

Dev server and tunnel1 · Write

Run your dev server

Start your dev server. With ngrok, put the local port on a public URL.5

Stagepass1 · Write

Code in your own editor

Link a project folder once. It is served at https://my-project.sp with SSL, so you keep your files, Git and build step.4

Dev server and tunnel2 · Test

Tag it in Webflow and publish

Add a script tag that points at the local or tunnel URL and publish. From Chrome 142, a public page that requests a local address asks for permission first.1

Stagepass2 · Test

Test on your real URL

Open the live site with ?stagepass=. Only your browser loads the local files, every visitor keeps production.2

Dev server and tunnel3 · Go live

Swap the URL and publish again

Replace the local or tunnel URL with your production URL, then publish the site again.5

Stagepass3 · Go live

Ship with your usual deploy

Upload the build to your hosting or CDN and bump data-stagepass-v. No extra publish step for testing.6

Point by point

Side by side.

TopicDev server and tunnelStagepassthis site
What it is Do it yourselfA dev server on your machine, reached by a script tag in Webflow. A tunnel such as ngrok puts the local server on a public URL.5 CLI and loaderAn open source CLI and browser loader. Tagged scripts and styles on your Webflow site load from a folder on your Mac, only in your browser.7
Where you write codeSame on both Your own editorYour own editor and dev server.5 Your own editorYour own editor. The folder you link is served at https://<name>.sp with SSL.4
Where code runs while you test Wherever the tag is publishedWherever the script tag is published. From Chrome 142, a public page that requests a local or loopback address triggers a Local Network Access permission prompt, also for scripts.1 Your real live URLYour real Webflow URL, only in a browser with an active ?stagepass= session. Visitors keep getting production.2
Setup on the Webflow site Script tag and publishAdd the script tag to Webflow and publish. With ngrok, start the CLI to put your local port on a public URL.5 One script and attributesOne loader script in the head code, plus data-stagepass and data-src or data-href on the tags you want to swap.8
Where production files live Your machineYour machine while you test. On the ngrok free plan, browser HTML traffic shows an interstitial page first.3 Your hosting or CDNYour own hosting or CDN. The production URL stays in data-src. Stagepass hosts nothing.8
Going live Swap URL, publishReplace the local or tunnel URL with your production URL and publish again.5 Your usual deployUpload your build as usual and bump data-stagepass-v so browsers fetch the new file.6
Requirements Any dev serverAny dev server. ngrok adds its CLI on your machine.5 macOSmacOS, Node.js 18 or newer and Homebrew. Setup installs Caddy, PHP and Dnsmasq.9
License and cost Free tunnel plan, with limitsngrok has a free plan with usage limits and one dev domain.3 MIT, freeOpen source under the MIT license, free to use.10

When each one fits

Pick the tool for the job.

DSPick Dev server and tunnel if

  • You test on a staging copy anyway
  • You already run a dev server
  • A short lived tag in a published site is fine for you5

SpPick Stagepass if

  • Only your browser should load local files
  • You test on the real live URL
  • Visitors keep the production file the whole time

Switching

Moving from a tunnel to Stagepass.

Keep your dev server and build. Only the way the browser finds the files changes.

  1. 1Link the folder your build writes to with stagepass link.
  2. 2Put the production URL in data-src and tag the script with data-stagepass.
  3. 3Remove the localhost or tunnel tag from Webflow and add the Stagepass loader.
Status and sources Checked on · 10 sources

We check every statement on this page against its public source once a month. Each small number in the text points to a source below, with a link to the original page and, where one exists, an archived copy on the Internet Archive.

Stagepass is not affiliated with Local dev server and tunnel. Tools change over time. If something here is out of date or unfair, open an issue.

  1. 1 Chrome for Developers, Local Network Access Dev server and tunnel developer.chrome.com Archived 25 Oct 2026
  2. 2 Stagepass README, dev mode Stagepass github.com
  3. 3 ngrok free plan limits Dev server and tunnel ngrok.com Archived 2 Oct 2026
  4. 4 Stagepass CLI README Stagepass github.com
  5. 5 ngrok docs, getting started Dev server and tunnel ngrok.com Archived 14 Jul 2026
  6. 6 Stagepass MIGRATION.md Stagepass github.com
  7. 7 Stagepass README Stagepass github.com
  8. 8 Stagepass README, tagging scripts Stagepass github.com
  9. 9 Stagepass setup.js Stagepass github.com
  10. 10 Stagepass LICENSE Stagepass github.com