Semver Calculator

Parse, validate, bump, compare, and check range constraints for semantic versions following the SemVer 2.0.0 specification. 100% client-side β€” your data never leaves your browser.

Try:

Bump Version

Click to increment and apply the new version

Enter a valid version above to bump it

Enter a semantic version above to parse, bump, compare, or check range constraints.

Format: MAJOR.MINOR.PATCH (e.g. 1.4.2, 2.0.0-beta.1+build.123)

How to Use

  1. Enter a semantic version (e.g. 1.4.2 or 2.0.0-beta.1+build.456) or click an example
  2. View the color-coded breakdown of major, minor, patch, pre-release, and build
  3. Use Bump to increment any component and copy the result
  4. Use Compare to check which version has higher precedence
  5. Use Range to test against constraints like ^1.2.0
  6. Use Sort to order a list of versions by semver precedence

Semantic Versioning Quick Reference

MAJOR

Increment for incompatible API changes. Consumers may need to update their code.

1.0.0 β†’ 2.0.0

MINOR

Increment for backward-compatible features. Existing code continues to work.

1.2.0 β†’ 1.3.0

PATCH

Increment for backward-compatible bug fixes. No new features.

1.2.3 β†’ 1.2.4

Caret (^) vs Tilde (~) Ranges

^ Caret Range

Allows changes that do not modify the left-most non-zero digit. Default for npm install.

^1.2.3 β†’ >=1.2.3, <2.0.0
^0.2.3 β†’ >=0.2.3, <0.3.0
^0.0.3 β†’ >=0.0.3, <0.0.4

~ Tilde Range

Allows only patch-level changes. More conservative β€” locks to the same minor version.

~1.2.3 β†’ >=1.2.3, <1.3.0
~0.2.3 β†’ >=0.2.3, <0.3.0
~1.0.0 β†’ >=1.0.0, <1.1.0

Frequently Asked Questions

Related Tools