Choose Cypress if your team writes JavaScript, tests its own web app and wants an interactive runner with Time Travel snapshots plus an optional Cypress Cloud dashboard. Choose Playwright if you want TypeScript, Python, .NET or Java, a fresh browser context for every test and one API across Chromium, Firefox and WebKit. Both test runners are free and open source: Cypress under the MIT licence and Playwright under the Apache License 2.0.
Front-end teams often inherit whichever tool the last developer liked, so I went to the source: Cypress's why, trade-offs and Cloud plans pages plus its licence, and Playwright's home, browsers, languages and parallelism pages plus its licence.
Cypress and Playwright side by side
| Cypress | Playwright | |
|---|---|---|
| Maker | Cypress.io | Microsoft |
| Licence | MIT | Apache License 2.0 |
| Test languages | JavaScript only | TypeScript, Python, .NET and Java |
| Where test code runs | Inside the browser | Outside, driving browsers through one API |
| Browsers | Cross-browser testing covered in its docs | Chromium, Firefox and WebKit, plus branded Chrome and Edge |
| Two browsers at once | Not possible, per its trade-offs page | Fresh browser context per test |
| Free option (as of October 2026) | Cypress App free; Cloud Starter free for 10 users and 500 test results a month | Everything is open source |
The in-browser design behind Cypress
The trade-offs page in the Cypress docs is refreshingly honest. Cypress commands run inside the browser, test code is evaluated there rather than in Node, and the only language it'll ever support is JavaScript. You can't use it to drive two browsers at the same time, each test is bound to a single superdomain unless you use the cy.origin command, and there's no native or mobile events support. It also says Cypress isn't the right tool for indexing the web, spidering links, performance testing or scripting third-party sites: its sweet spot is testing your own application.
The upside of that design, in Cypress's words, is native access to everything in the app under test, with no object serialisation or JSON wire protocols in between. Add Time Travel snapshots that replay every step and automatic waiting, and you get a runner many front-end developers find easy to debug.
How Playwright approaches testing
Playwright offers one API to drive Chromium, Firefox and WebKit for testing, scripting and AI agents. Its test runner has auto-waiting, web-first assertions that retry, tracing and parallelism, and its home page says each test gets a fresh browser context, equivalent to a brand new browser profile. Tests run in parallel by default through several worker processes, and you can shard across multiple machines for faster CI. There's a test generator that records your clicks, a Trace Viewer with DOM snapshots and network requests at every step, a VS Code extension and Playwright MCP for AI agents.
What's free, and what Cypress Cloud adds
The Cypress App is free and open source. Cypress Cloud is the paid service for recording runs, Test Replay, parallelisation and analytics, and its Starter plan is free with 10 users, 500 test results a month and 100 prompt executions, plus a 30-day trial of Enterprise features. Team, Business and Enterprise plans add flake detection, Jira integration, spec prioritisation and SSO, and UI Coverage and Cypress Accessibility are premium extras. Playwright's pages I read don't list a paid dashboard at all; reporting and traces come with the open source runner.
Quick picks for your team
- Front-end team writing JavaScript and testing your own app? Cypress feels natural.
- Tests in Python, Java or .NET? Playwright, as Cypress supports JavaScript only.
- Need to test flows across several origins or two browsers? Playwright avoids Cypress's superdomain and single-browser limits.
- Want a hosted dashboard with replays and flaky test analytics? Cypress Cloud.
- Building AI agents that control a browser? Playwright MCP is built for that.
For the layer under the browser, my guide on how API testing tools sharpen web development skills is worth a read, and if you're hiring, see my notes on becoming a remote software tester.
My advice on Cypress or Playwright
For a JavaScript front-end team that mainly tests its own app, Cypress is a pleasant place to start and Cypress Cloud's free Starter plan covers a small team. If your tests need other languages, several origins, several browsers or AI agent control, I'd pick Playwright from day one. Don't rewrite a working Cypress suite just because Playwright is popular; add Playwright where Cypress's trade-offs page says it can't help.
Want AI doing the heavy lifting in your marketing?
I build the systems that handle the boring 80 percent, so you get your week back. Done properly, with the human kept in.
Do you make testing tools? Tool makers can ask to be considered for a featured place in comparisons like this one.
Frequently asked questions
Is Cypress free?
The Cypress App is free and open source under the MIT licence. Cypress Cloud is a paid service with a free Starter plan for 10 users and 500 test results a month.
Is Playwright free?
Yes. Playwright is open source under the Apache License 2.0 and available for TypeScript, Python, .NET and Java.
Can Cypress run tests in Python?
No. Cypress's trade-offs page says test code runs inside the browser and the only language it'll ever support is JavaScript.
Can Cypress control two browsers at once?
No. Cypress lists not being able to drive two browsers at the same time as one of its permanent trade-offs.
Who makes Playwright?
Playwright is made by Microsoft. Its site carries a Microsoft copyright and privacy statement.


