NIST SP 800-22 guides
Practical answers for running, reading and troubleshooting the NIST SP 800-22 statistical tests for randomness.
How to run SP 800-22
Collect data, choose a tool, run all 15 tests and read the results.
Interpreting p-values
Pass, fail, N/A, and why one failure is normal for random data.
Minimum sequence length
How many bits each test needs, and why 1,000,000 is the target.
Preparing input files
Clean .bin files from Python, C, Linux, Arduino and ESP32.
NIST STS errors and fixes
Build errors, wrong input format, every test failing.
Comparing test suites
SP 800-22, Dieharder, TestU01, PractRand and SP 800-90B.
Have a file ready? Run all 15 SP 800-22 tests and see every p-value on screen, free and without an account.
Run the free testNISTTEST.COM is an independent implementation of NIST SP 800-22 Rev. 1a and is not affiliated with or endorsed by the National Institute of Standards and Technology.