Glossary

    Glossary

    Verification vs Validation

    Verification asks: did we build the thing right? Does the code match the spec? Validation asks: did we build the right thing? Does the spec match what users actually need?

    Last updated: September 1, 2026

    These two words sound almost identical and are frequently confused, but they check different assumptions.

    Verification checks the software against its specification. Does the code do what it was supposed to do, as written? Automated testing — unit, integration, end-to-end — is almost entirely verification.

    Validation checks the specification itself against real user needs. Did we build the right feature at all? This is closer to product discovery, user research, and usability testing than to running a test suite.

    Why this matters

    A feature can pass every automated test — fully verified — and still be the wrong feature, because nobody validated that it solved the actual problem. Teams that only measure "tests passing" can ship confidently wrong software.

    In practice

    Automated and autonomous testing are verification tools. They tell you the software behaves as specified — including catching regressions in flows nobody explicitly wrote a test for. They can't tell you whether the spec was right; that's validation, and it still needs user research, product judgement, and feedback loops with real usage. See what testing actually is for the fuller version of this distinction.

    See also

    See how this plays out in practice — start a free run or read the autonomous testing guide.