Skip to content
๐Ÿท๏ธ

SemVer Checker

Developer

Compare two semantic version strings and see which is greater, equal, or invalid.

0
0
Versions
vs

Comparing 1.9.0 against 1.10.0 as if they were decimal numbers gets the wrong answer, since .9 reads as larger than .10 when treated that way, but semantic versioning actually treats each dot-separated segment as its own integer, meaning 10 is genuinely greater than 9 in that position, and a pre-release tag like 1.0.0-alpha adds another layer of comparison rules a naive string or decimal check would miss entirely. This tool compares two semantic version strings using actual semver comparison rules, correctly ordering minor and patch numbers as integers rather than decimal fragments, and validating whether either string is even a properly formatted version to begin with.

See more about the SemVer Checker

Useful for checking whether a dependency update actually represents a newer version before upgrading, sorting a list of release tags into their true chronological order, or catching an invalid version string before it causes a broken comparison somewhere downstream.

Key features

  • Clean interface
  • Fast processing
  • No signup required
  • Works offline

Quick answers for SemVer Checker

What counts as a valid version string?
Standard semver format, major.minor.patch, with optional pre-release and build metadata suffixes like 1.2.3-beta.1+20130313, checked against a regex before any comparison runs.
How does it decide which version is greater?
It compares major, then minor, then patch numerically, and only if all three match does it fall back to comparing pre-release labels, where a version without a pre-release tag beats one that has one.
What happens if I enter an invalid version?
The result shows "Invalid" with the reason "Both must be valid semver (e.g. 1.2.3)" instead of a comparison, so malformed input is caught before it produces a misleading answer.