Validate semantic versioning strings against SemVer 2.0.0 specification
Zero Dependencies · Works OfflineThe SemVer Validator is a free online tool that checks whether a version string conforms to the Semantic Versioning 2.0.0 specification. It parses the MAJOR.MINOR.PATCH format, validates prerelease identifiers (e.g., -alpha.1, -beta.2, -rc.1), and verifies build metadata (e.g., +build.123). All validation runs locally in your browser with no data uploaded to any server.
1. Enter a version string (e.g., 1.2.3 or 2.0.0-beta.1+build.42) in the input field.
2. The tool instantly validates and shows parsed components.
3. For bulk validation, switch to the Bulk tab and enter one version per line.
Validate your package version before publishing to npm, PyPI, or other registries.
Check version strings in automated release workflows to prevent format errors.
Bulk validate all version strings in package.json or lock files for compliance.
SemVer 2.0.0 defines version format as MAJOR.MINOR.PATCH. MAJOR changes indicate incompatible API changes, MINOR changes add backward-compatible features, and PATCH changes fix bugs. Prerelease versions append a hyphen and dot-separated identifiers (e.g., 1.0.0-alpha.1). Build metadata appends a plus sign and dot-separated identifiers (e.g., 1.0.0+build.123). Numeric identifiers MUST NOT include leading zeroes (e.g., 01.02.03 is invalid).
It checks if a version string follows the Semantic Versioning 2.0.0 specification format: MAJOR.MINOR.PATCH with optional prerelease and build metadata.
Three non-negative integers separated by dots (e.g., 1.2.3), optionally followed by prerelease (-alpha.1) and/or build metadata (+build.123).
No. This validates individual SemVer strings. For range constraints, use our SemVer Calculator tool.
No. All validation happens locally in your browser.
Yes. Use bulk mode — enter one version per line.
Prerelease (after hyphen) affects precedence. Build metadata (after plus) is ignored in comparisons.