ozzo-validation by go-ozzo
An idiomatic Go (golang) validation package. Supports configurable and extensible validation rules (validators) using normal language constructs instead of error-prone struct tags.
About ozzo-validation
From the project's README at github.com/go-ozzo/ozzo-validation. Lightly cleaned for readability; for the full source see the upstream repo.
[](http://godoc.org/github.com/go-ozzo/ozzo-validation) [](https://travis-ci.org/go-ozzo/ozzo-validation) [](https://coveralls.io/github/go-ozzo/ozzo-validation?branch=master) [](https://goreportcard.com/report/github.com/go-ozzo/ozzo-validation) Description
ozzo-validation is a Go package that provides configurable and extensible data validation capabilities. It has the following features:
use normal programming constructs rather than error-prone struct tags to specify how data should be validated. can validate data of different types, e.g., structs, strings, byte slices, slices, maps, arrays. can validate custom data types as long as they implement the interface. can validate data types that implement the interface (e.g. ). customizable and well-formatted validation errors. error code and message translation support. provide a rich set of validation rules right out of box. extremely easy to create and use custom validation rules.
For an example on how this library is used in an application, please refer to go-rest-api whi
Health score breakdown
6-dimension composite. See methodology for formula and weights.
Adoption signals
Real-world usage data, pulled from each registry. The bigger the numbers, the more battle-tested the project.
| Signal | Value | Source |
|---|---|---|
| GitHub stars | 4.1k | github.com/go-ozzo/ozzo-validation |
| GitHub forks | 238 | github.com/go-ozzo/ozzo-validation |
Release & maintenance
Is this project actively maintained, or about to die? Check the recency of last commit and last release.
| Project age | 9.9 years | since Jun 2016 |
| Last commit | 2.1 years ago | Mar 23, 2024 |
| Releases shipped | 21 | last: 5.6 years ago |
Self-hosting cost across providers
Detected requirements: 4GB RAM, 40GB disk minimum. Cheapest plan per provider that meets the requirement.
| Provider | Plan | Specs | Monthly | |
|---|---|---|---|---|
| hetzner | CAX11 | 2c · 4GB · 40GB | $4.13 USD | Deploy → |
| vultr | VC2 | 1c · 1GB · 25GB | $5 USD | Deploy → |
| linode | Nanode 1GB | 1c · 1GB · 25GB | $5.12 USD | Deploy → |
| digitalocean | Basic Regular 1GB | 1c · 1GB · 25GB | $6 USD | Deploy → |
Ready to self-host ozzo-validation?
Spin up a hetzner CAX11 (4GB RAM, 40GB disk) for $4.13/mo and follow the project's official install docs.
Data last refreshed May 7, 2026.
Similar open-source projects
Projects in our directory that replace the same SaaS or share topics with ozzo-validation.