Semantic versioning (semver) is a widely adopted versioning scheme that uses a three-part number format — MAJOR.MINOR.PATCH — to communicate the nature of changes in a release. It is the standard for npm packages, Go modules, Rust crates, and most modern software projects. Use this tool to parse, validate, bump, and compare semver versions instantly.
Version Bumper
All Bumps
Version Comparison
Semver Format Reference
MAJOR.MINOR.PATCH[-prerelease]
| Part | When to Bump | Example |
|---|---|---|
| Major | Breaking, incompatible API changes | 1.0.0 → 2.0.0 |
| Minor | New backward-compatible features | 1.0.0 → 1.1.0 |
| Patch | Backward-compatible bug fixes | 1.0.0 → 1.0.1 |
| Pre-release | Unstable preview before final release | 1.0.1-alpha.1 |
How to Use the Semver Version Bumper
Semantic versioning helps developers communicate the impact of each release through a structured numbering scheme. Whether you are maintaining an npm package, shipping a REST API, or tagging Docker images, understanding when to bump which part of the version is crucial. This tool automates the process so you can focus on writing code instead of doing mental arithmetic on version strings.
Step 1: Enter Your Current Version
Type your current version into the input field at the top. The tool accepts any valid semver string such as 1.2.3, 0.9.0, or 2.0.0-beta.1. An optional leading v prefix is also accepted and will be stripped automatically. As you type, the parsed components — major, minor, patch, and pre-release — appear below the input so you can verify the tool understood your version correctly.
Step 2: Choose a Bump Type
Click one of the three bump buttons to increment the version. A patch bump increments the last number and is used for bug fixes (1.2.3 becomes 1.2.4). A minor bump increments the middle number and resets the patch to zero, used for new features (1.2.3 becomes 1.3.0). A major bump increments the first number and resets both minor and patch, used for breaking changes (1.2.3 becomes 2.0.0). All three bumped versions are always shown at once for quick reference.
Step 3: Add a Pre-release Tag (Optional)
If you are preparing a pre-release, select a pre-release identifier from the dropdown — alpha, beta, or rc (release candidate). The bumped version will include the identifier and start at iteration 1. For example, bumping the patch of 1.2.3 with "beta" selected produces 1.2.4-beta.1. Pre-release versions sort lower than their release counterparts, which is important for package managers that resolve version ranges.
Step 4: Compare Two Versions
Scroll down to the comparison section to determine which of two versions is newer. Enter both versions and click Compare. The tool evaluates each segment according to the semver specification and clearly tells you which version takes precedence, or if they are equal. This is useful when reviewing pull requests, verifying CI pipelines, or resolving dependency conflicts where you need to know the exact ordering of two version strings.
Copying Results
Each bumped version has a copy button next to it. Click the icon to copy the version string to your clipboard, ready to paste into your package.json, Cargo.toml, CI config, or git tag command. The bump button also updates the current version input, so you can chain multiple bumps in sequence without retyping.
Frequently Asked Questions
Is this semver tool really free?
Yes, the Semver Version Bumper is completely free to use with no limits. There is no account or signup required. Use it as many times as you need for all your projects.
Is my data safe when using this tool?
Absolutely. Everything runs locally in your browser. No version strings or data are sent to any server. Your input never leaves your device, making it completely private and secure.
What is semantic versioning (semver)?
Semantic versioning is a versioning scheme that uses a three-part number format: MAJOR.MINOR.PATCH. Each part conveys meaning about the type of changes made. Major bumps indicate breaking changes, minor bumps add backward-compatible features, and patch bumps fix bugs without changing the API.
When should I bump the major version?
Bump the major version when you introduce breaking changes that are not backward compatible. For example, removing a public API method, changing function signatures, or restructuring data formats would all warrant a major version bump from 1.x.x to 2.0.0.
How do pre-release versions work in semver?
Pre-release versions are denoted by appending a hyphen and identifiers after the patch number, such as 1.2.3-alpha.1 or 2.0.0-beta.3. Pre-release versions have lower precedence than the normal version, meaning 1.0.0-alpha.1 is considered older than 1.0.0.
How does semver version comparison work?
Versions are compared left to right: major, then minor, then patch. A higher number in an earlier position always wins. For example, 2.0.0 is newer than 1.99.99. Pre-release versions of the same number are older than the release version, so 1.0.0-rc.1 is older than 1.0.0.
Can I use this tool for npm package versioning?
Yes, npm follows the semver specification, so this tool works perfectly for npm packages. You can parse your current package version, bump it according to semver rules, and copy the result directly into your package.json file.