Kurlo vs Bruno
Kurlovs Bruno.
Bruno and Kurlo start from the same idea: no account, and collections as files in your Git repository. They differ in what is free and what comes in the box. Kurlo has no paid edition, runs Postman scripts without converting them, and adds browser checks, cookie sync and an MCP server for your agent.
Checked 15 October 2026
Side by side.
| Kurlo | Bruno | |
|---|---|---|
| Price | Free, every featureNo paid plan to grow into | Free corePro $6, Ultimate $11 per user a month |
| Account | Not needed | Not needed |
| Where collections live | Your disk, as YAML in your Git repo | Your disk and your Git repo |
| Private Git hosts | Any host | ProFree works with public providers |
| Commit and push in the app | Included | ProFree can clone, diff and pull |
| Workspaces | Unlimited | 2 on free |
| Data-driven runs | CSV and JSON data files | Pro |
| Source code | MIT | MIT corePaid editions on top |
| Built on | Native Go with the system WebView | Electron |
| Postman scripts | pm.* scripts run as written | Converted to bru.* on importComplex scripts need rewriting |
| Mock server | Local, no request capWorks offline, no account | Local |
| Browser CORS and CSP checks | Built in | No |
| Sync cookies from your browser | Extension for Chromium and Firefox | No |
Checked against Bruno pricing and the vendor’s documentation on 15 October 2026. Prices are per user per month on annual billing. If something here is out of date, open an issue.
Download size, measured
Receipts.
Official downloads on 23 October 2026: Kurlo 2.4.1 and Bruno 4.3.0. 1 MB is 1,048,576 bytes.
Why switch
Why people move.
No. 01
Nothing behind an edition
Private Git hosts, commit and push from the app, data-driven runs and any number of workspaces are all in the one free download.
No. 02
pm.* stays pm.*
Scripts imported from Postman are not translated to another API. They run as written, so the same script works in Kurlo and in the Postman collection a colleague still uses.
No. 03
See what the browser will do
Send a request the way a page on another origin would, and get the CORS or CSP error before your users do.
No. 04
Your browser session
An extension for Chrome, Edge, Brave and Firefox sends the cookies of the site you are signed into, so a request to a session-protected API just works.
No. 05
Built for agents
kurlo mcp lets Claude Code, Codex or Cursor run your saved requests and write new ones with tests. Secrets stay masked and protected environments are off limits.
Moving from Bruno
Bring it all.
Kurlo imports Bruno collections saved in the OpenCollection format, and the original files are not touched. Migration guide
- In Kurlo, click the import button next to + and choose Bruno.
- Pick the collection. Kurlo adds it to the current workspace.
- Pick an environment and send a request you use often to check it.
What comes across: Folders, including empty ones, and requests, GraphQL included, with the settings the format describes.
Free · MIT · No account
Switch it.
Import your Bruno collection and keep working. No account, nothing to rewrite.
macOS 12+ · Windows 10+ · Ubuntu 22.04+ · x64 and Arm64

