Best Property-Based Testing Tools in 2026
Updated
In short: fast-check is ranked #1 of 27 as of 5 October 2026, ahead of Gopter and Scala Hedgehog. The best-ranked option with a free plan is Gopter.
Property-based testing tools generate varied inputs to examine how software behaves across cases, beyond individually written examples. Compared on supported languages, test runner support, cases per run and failing-case shrinking, the entries provide practical dimensions for matching a tool to your testing setup. Reproducible failures can matter when investigating problems, and stateful testing may be relevant for behavior that spans sequences of actions. Free plan availability and paid-from pricing add cost context. fast-check, Gopter and Scala Hedgehog are among the tools listed, alongside CsCheck and QuickCheck. Consider which languages and runners you use and how you want to reproduce and investigate failures.
27 property-based testing tools ranked on what their makers publish — plans and prices, free tiers, platforms and the facts on their own pages.
7 of the 25 here have a free tier you can use, 0 have open-source code on record, and 0 have full bars: free, open, on most of your devices and documented.
| # | App | Signal | Free tier | Open code | Devices | From | Score |
|---|---|---|---|---|---|---|---|
| 1 | fast-checkWeb · Linux · API | Two bars | — | 2 of 6 | Free | 6.4 | |
| 2 | GopterLinux · Self-hosted | Two bars | — | 1 of 6 | Free | 6.4 | |
| 3 | Scala HedgehogLinux | Two bars | — | 1 of 6 | Free | 6.4 | |
| 4 | CsCheckSelf-hosted | Two bars | — | 0 of 6 | Free | 6.3 | |
| 5 | PropErSelf-hosted | Two bars | — | 0 of 6 | Free | 6.3 | |
| 6 | QuickCheckLinux | Two bars | — | 1 of 6 | Free | 6.3 | |
| 7 | RapidSelf-hosted | Two bars | — | 0 of 6 | Free | 6.3 | |
| 8 | HypothesisWindows · Mac · Linux | Two bars | — | — | 3 of 6 | — | 5.6 |
| 9 | RapidCheckWindows · Linux · Self-hosted | One bar | — | — | 2 of 6 | — | 5.5 |
| 10 | ProptestWeb | One bar | — | — | 1 of 6 | — | 5.4 |
| 11 | QuickCheckNo platforms listed | One bar | — | — | 0 of 6 | — | 5.2 |
| 12 | SwiftCheckMac · iPhone | No signal | — | — | 2 of 6 | — | 5.2 |
| 13 | ErisNo platforms listed | No signal | — | — | 0 of 6 | — | 5.1 |
| 14 | FSharp.HedgehogNo platforms listed | No signal | — | — | 0 of 6 | — | 5.1 |
| 15 | JSVerifyNo platforms listed | No signal | — | — | 0 of 6 | — | 5.1 |
| 16 | PlausibleNo platforms listed | No signal | — | — | 0 of 6 | — | 5.1 |
| 17 | PropCheckNo platforms listed | No signal | — | — | 0 of 6 | — | 5.1 |
| 18 | QCheckNo platforms listed | No signal | — | — | 0 of 6 | — | 5.1 |
| 19 | QuickTheoriesNo platforms listed | No signal | — | — | 0 of 6 | — | 5.1 |
| 20 | Racket QuickCheckNo platforms listed | No signal | — | — | 0 of 6 | — | 5.1 |
| 21 | RantlyNo platforms listed | No signal | — | — | 0 of 6 | — | 5.1 |
| 22 | scalapropsNo platforms listed | No signal | — | — | 0 of 6 | — | 5.1 |
| 23 | StreamDataNo platforms listed | No signal | — | — | 0 of 6 | — | 5.1 |
| 24 | test.checkNo platforms listed | No signal | — | — | 0 of 6 | — | 5.1 |
| 25 | FsCheckNo platforms listed | No signal | — | — | 0 of 6 | — | 5.0 |
Compare all 25 in a table
| # | App | Score | Free plan | From | Free plan | Paid from | Supported languages | Test runner support |
|---|---|---|---|---|---|---|---|---|
| 1 | fast-check | 6.4 | Free plan | Free | Yes | — | JavaScript, TypeScript | Jest, Mocha, Vitest, Ava, Bun, Deno, Node.js test runner |
| 2 | Gopter | 6.4 | Free plan | Free | Yes | — | Go | Go testing package; GoConvey |
| 3 | Scala Hedgehog | 6.4 | Free plan | Free | Yes | — | Scala, Java | sbt, Minitest, MUnit |
| 4 | CsCheck | 6.3 | Free plan | Free | Yes | — | C#, F# | TUnit; any testing framework |
| 5 | PropEr | 6.3 | Free plan | Free | Yes | — | Erlang | EUnit, Common Test |
| 6 | QuickCheck | 6.3 | Free plan | Free | Yes | — | Haskell | Test.SmallCheck.Drivers |
| 7 | Rapid | 6.3 | Free plan | Free | Yes | — | Go | Go testing package; go test |
| 8 | Hypothesis | 5.6 | No | — | Yes | — | Python | pytest, unittest |
| 9 | RapidCheck | 5.5 | No | — | Yes | — | C++ | Boost Test, Google Test, Google Mock, Catch.hpp |
| 10 | Proptest | 5.4 | No | — | Yes | — | Rust | Rust test harness ([test]); TestRunner |
| 11 | QuickCheck | 5.2 | No | — | — | — | Haskell | — |
| 12 | SwiftCheck | 5.2 | No | — | Yes | — | Swift | XCTest |
| 13 | Eris | 5.1 | No | — | Yes | — | PHP | PHPUnit |
| 14 | FSharp.Hedgehog | 5.1 | No | — | Yes | — | F#, C# | xUnit V3 |
| 15 | JSVerify | 5.1 | No | — | Yes | — | JavaScript, TypeScript | Mocha, nodeunit, Jasmine |
| 16 | Plausible | 5.1 | No | — | Yes | — | Lean 4 | Lean 4 tactic framework |
| 17 | PropCheck | 5.1 | No | — | Yes | — | Ruby | RSpec, MiniTest, test-unit |
| 18 | QCheck | 5.1 | No | — | Yes | — | OCaml | QCheck_base_runner, QCheck_runner, OUnit, Alcotest |
| 19 | QuickTheories | 5.1 | No | — | Yes | — | Java | JUnit, TestNG, and other test frameworks |
| 20 | Racket QuickCheck | 5.1 | No | — | Yes | — | Racket | RackUnit |
| 21 | Rantly | 5.1 | No | — | Yes | — | Ruby | Test::Unit, Minitest, RSpec |
| 22 | scalaprops | 5.1 | No | — | Yes | — | Scala | ScalapropsFramework, sbt |
| 23 | StreamData | 5.1 | No | — | Yes | — | Elixir | ExUnit |
| 24 | test.check | 5.1 | No | — | Yes | — | Clojure, ClojureScript | clojure.test, cljs.test |
| 25 | FsCheck | 5.0 | No | — | Yes | — | F#, C#, VB | — |
Is your app on this list?
Numbered spots on this list can be sponsored, and a sponsored row is labelled as paid.
Questions about this list
Which property-based testing tool is ranked first on Freedom251?
fast-check is ranked #1 of 27 with a score of 6.4. Gopter is second and Scala Hedgehog third.
How many of these have a free plan?
7 of the 25 on this page publish a free plan on their own pricing pages.
How is this list ranked?
Ranked free-and-open first: a usable free tier and open-source code, then the platforms it runs on and its documentation.
