Semver Bumper (Calculate Next Version)

Type a current version, pick the kind of change you're shipping, get the next version. Handles full semver 2.0.0 syntax including pre-release (1.2.3-rc.4) and build metadata (1.2.3+build.99). Useful inside release scripts and CI workflows when you need to compute a bump without depending on a CLI tool.

How to use the Semver Bumper (Calculate Next Version)

Paste the current version in semver 2.0.0 format (X.Y.Z, optionally followed by -prerelease and +build). Pick the bump type. Optional prerelease identifier customises the prerelease label (rc, beta, alpha, etc.). The result shows the new version with each change explained.

What is the Semver Bumper (Calculate Next Version)?

Semantic Versioning (semver) is a convention for version numbers that communicates the compatibility implication of an update. Bump major when you make backward-incompatible changes; minor when you add backward-compatible features; patch when you fix bugs without behaviour change. Consumers can pin to a major version and trust that minor/patch updates won't break them.

The wrinkle is pre-releases: 1.0.0-rc.1 orders before 1.0.0, and you typically bump the rc counter (1.0.0-rc.2, 1.0.0-rc.3) until ready to drop the suffix. This tool handles the comparison logic correctly.

Frequently asked questions

What is the difference between major, minor and patch?

Major is for breaking changes, minor for backward-compatible features and patch for backward-compatible bug fixes. That is the core of the semver 2.0.0 contract.

How are pre-release versions ordered?

A pre-release like 1.2.3-rc.1 sorts before 1.2.3, and identifiers compare field by field, so rc.2 comes after rc.1. Build metadata after a plus sign is ignored for ordering.

Does it validate my input version?

Yes. If the current version is not valid semver 2.0.0 the tool flags it rather than guessing, so you never bump from a malformed base.
Embed this tool on your site

Free to embed, no attribution required (but appreciated). Paste this where you want the tool to appear: