Freedom251 › Test Data Generation Tools
GoFakeIt

What GoFakeIt is
GoFakeIt is a free, open-source random data generator written in Go for creating synthetic values. The project lists more than 310 functions, including generators for names, email addresses, phone numbers, companies and credit card numbers. It can populate struct fields, with tags to customize the generated values, and developers can add custom functions or implement the Fakeable interface for their own types. Go templates can combine the available functions into custom output. The project also lists an HTTP server and a command line tool, and describes itself as having zero dependencies. A seed can make results reproducible. Its default generator uses a thread-locked pseudorandom source; documented alternatives include crypto/rand, PCG, ChaCha8, JSF, SFC and an incrementing source. GoFakeIt supports synthetic data in CSV, JSON and XML, as well as API data generation and self-hosted deployment. The documented Go v7 installation command is `go get github.com/brianvoe/gofakeit/v7`.
Who it suits
GoFakeIt is suited to Go developers who need synthetic data for structs, templates, APIs or self-hosted workflows. Its custom generators and reproducible seeds may help developers shape and repeat generated output.
What it does well
- Lists more than 310 generation functions.
- Supports custom functions and struct tags.
- Seeds can produce reproducible results.
- Includes an HTTP server and command line tool.
- Supports CSV, JSON and XML.
What to know first
- Written in Go.
- Self-hosted deployment is listed.
- The documented installation uses a Go package command.
Limits
GoFakeIt provides synthetic generation rather than relational data generation. Its listed platforms are API and self-hosted, so the facts do not describe a hosted web application.
Getting started
- Install Go v7 with `go get github.com/brianvoe/gofakeit/v7`
- Use the generator functions for synthetic values
- Populate struct fields and customize them with tags
- Add custom generators or implement the Fakeable interface
- Create formatted output with Go templates
- Use the HTTP server or command line tool when needed
Verdict
GoFakeIt offers a broad set of synthetic-data generators alongside customization through tags, custom functions and templates. It is a focused option for Go-based work rather than a hosted general-purpose data service.
Questions
Is GoFakeIt free?
Yes. It is free and open source, and the project displays an MIT license badge.
Which data formats does it support?
The listed formats are CSV, JSON and XML.
Can output be reproducible?
Yes. You can set a seed to reproduce generated results.
Can developers add their own generators?
Yes. Custom functions can be added, including through AddFuncLookup, and types can implement the Fakeable interface.
How is GoFakeIt installed?
The documented command is `go get github.com/brianvoe/gofakeit/v7`.
Facts from GoFakeIt's own pages
- Browser extension
- A separate GoFakeIt extension repository describes form autofill and says it supports Chrome and Firefox; its store listings are marked as coming soon. · github.com, 10 Oct 2026
- Custom functions
- Users can add custom generators with AddFuncLookup and use them in struct tags and other supported features. · github.com, 10 Oct 2026
- Customization
- Users can add custom functions and implement the Fakeable interface to control generated values for their own types. · raw.githubusercontent.com, 9 Oct 2026
- Data types
- Examples include names, email addresses, phone numbers, companies, credit card numbers, and job titles. · github.com, 10 Oct 2026
- Dependencies
- The feature list describes the library as having zero dependencies. · github.com, 10 Oct 2026
- Functions
- The README lists 310+ functions for generating fake data. · github.com, 10 Oct 2026
- Install
- The README gives `go get github.com/brianvoe/gofakeit/v7` as the installation command. · github.com, 10 Oct 2026
- Installation
- The README installs the Go v7 package with `go get github.com/brianvoe/gofakeit/v7`. · raw.githubusercontent.com, 9 Oct 2026
- License
- GitHub identifies the repository license as MIT. · github.com, 10 Oct 2026
- Purpose
- GoFakeIt describes itself as a random fake data generator written in Go. · github.com, 10 Oct 2026
- Randomness
- The README says the default global usage is seeded with a cryptographically secure number and supports reproducible output through Seed. · github.com, 10 Oct 2026
- Random sources
- The README lists PCG, ChaCha8, crypto, JSF, SFC, and a simple incrementing source among the available random sources. · github.com, 10 Oct 2026
- Reproducibility
- Users can set a seed to generate reproducible results. · raw.githubusercontent.com, 9 Oct 2026
- Struct generation
- It can populate Go structs with random data and supports tags to customize field values. · github.com, 10 Oct 2026
- Support
- The README links to Ko-fi and Buy Me a Coffee as support options and links to GitHub issues. · raw.githubusercontent.com, 9 Oct 2026
- Templates
- It supports custom output through Go's template engine and makes GoFakeIt functions available to templates. · github.com, 10 Oct 2026
- Tools
- The feature list includes an HTTP server and a command line tool. · github.com, 10 Oct 2026
Where GoFakeIt stands on Freedom251
- Test Data Generation Tools#18 of 28