FluentMigrator
FluentMigrator is a free .NET framework for managing database schema changes as version-controlled C# code.
What FluentMigrator is
FluentMigrator is a free .NET framework for managing database schema changes as version-controlled C# code. Each migration uses a fluent API and can define `Up` and `Down` methods to apply or reverse changes. The project lists database providers for SQL Server, PostgreSQL, MySQL, SQLite and Oracle, among others; provider packages are selected separately. Migrations can run inside an application, through Migrate.exe, or with dotnet-fm, a cross-platform tool integrated with the .NET CLI. By default, FluentMigrator creates a VersionInfo table to record completed migrations. Its command-line runners can preview generated SQL, and the CLI can validate migrations without executing them. The project documents .NET dependency injection and CI/CD examples for GitHub Actions, Azure DevOps and Jenkins. The Quick Start requires .NET 8.0 or later, a supported database, and basic C# and database knowledge. It is Apache-2.0 licensed, with releases distributed through NuGet.
Good
- Free under the Apache-2.0 License.
- Supports several database providers, including PostgreSQL and SQL Server.
- Can preview SQL and validate migrations before execution.
- Tracks completed migrations in a VersionInfo table by default.
Watch out
- Requires .NET 8.0 or later.
- Requires a supported database and basic C# knowledge.
- Provider packages are selected separately.
Who it suits
FluentMigrator suits .NET developers who want to manage database changes in C# and run or validate migrations through command-line or CI/CD workflows. It requires .NET 8.0 or later and basic C# and database knowledge.
Verdict
FluentMigrator brings schema changes into version-controlled C# migrations, with rollback methods and migration tracking. Its preview, validation and documented CI/CD options may suit teams that meet its .NET and database prerequisites.
Plans and prices
From FluentMigrator's own pricing page, checked 4 Oct 2026.
| Plan | Price | What it gives you |
|---|---|---|
| FluentMigrator | Free | Apache-2.0 licensed framework · distributed through NuGet; provider packages are selected separately |
The facts
Each one read from FluentMigrator's own pages, with the date it was checked.
What it does
- CI/CD
- The dotnet-fm documentation includes a GitHub Actions example for building an application and running migrations.checked 4 Oct 2026
- CLI integration
- The dotnet-fm tool integrates with the .NET CLI and is described as cross-platform.checked 4 Oct 2026
- Database support
- The documentation lists SQL Server, PostgreSQL, MySQL, SQLite, and Oracle providers, among others.checked 4 Oct 2026
- Distribution
- The repository says releases are stored on NuGet and prerelease CI builds on Azure Artifacts.checked 4 Oct 2026
- Execution options
- Migrations can run in-process, through the Migrate.exe console tool, or with the dotnet-fm CLI.checked 4 Oct 2026
- Integrations
- The project documents in-process integration with .NET dependency injection and CI/CD examples for Azure DevOps and Jenkins.checked 4 Oct 2026
- License
- The project is released under the Apache-2.0 License.checked 4 Oct 2026
- Migration syntax
- Migrations use a fluent C# API and define Up and Down methods for applying and rolling back changes.checked 4 Oct 2026
- Migration tracking
- After running migrations, FluentMigrator creates a version tracking table and records completed migrations.checked 4 Oct 2026
- Prerequisite
- The Quick Start lists .NET 8.0 or later and a supported database as prerequisites.checked 4 Oct 2026
- Preview and validation
- The CLI supports previewing migrations and validating them without executing them.checked 4 Oct 2026
- Purpose
- FluentMigrator is a .NET framework for managing database schema changes through version-controlled C# migrations.checked 4 Oct 2026
- Requirements
- The quick start lists .NET 8.0 or later, a supported database, and basic C# and database knowledge as prerequisites.checked 4 Oct 2026
- Rollback
- Migrations can define Up and Down methods to apply or roll back changes.checked 4 Oct 2026
- SQL preview
- The command-line runners support previewing generated SQL without executing it.checked 4 Oct 2026
- Support
- The project points users to GitHub Discussions, bug reports and feature requests, and the fluent-migrator Stack Overflow tag.checked 4 Oct 2026
- Tracking
- FluentMigrator tracks applied migrations in a VersionInfo table, which it creates automatically by default.checked 4 Oct 2026
The full review of FluentMigrator
FluentMigrator is a migration framework for teams that manage database changes in C# and .NET. It is strongest for developers who want schema changes versioned alongside application code, with explicit rollback methods and migration history. Its free, Apache-2.0-licensed model is compelling, but the .NET 8.0 prerequisite and C# workflow rule it out for many non-.NET teams.
Overview
Migrations use a fluent C# API with Up and Down methods: one applies a change, while the other defines its rollback. That makes the migration itself the place to express both directions, but a rollback is only as complete as the reversal written by the developer. FluentMigrator creates a VersionInfo table by default and records completed migrations, giving teams a durable way to track what has run.
It is free under the Apache-2.0 License and distributed through NuGet. Database provider packages are selected separately, so teams must choose the package that matches their database. Documented providers include SQL Server, PostgreSQL, MySQL, SQLite and Oracle, among others.
Key features
Execution and safeguards
Migrations can run in-process, through the Migrate.exe console tool or with dotnet-fm, which integrates with the .NET CLI and is cross-platform. CLI runners can preview generated SQL and validate migrations without executing them. These options let a team inspect changes before applying them and choose an execution path suited to its .NET workflow; they do not remove the need to review database changes carefully.
Automation and integration
The documentation includes CI/CD examples for GitHub Actions, Azure DevOps and Jenkins, and describes in-process integration with .NET dependency injection. That makes FluentMigrator a natural candidate for teams that want migrations in an established build or application pipeline. Its automation story is centered on .NET tooling rather than a language-neutral interface.
Pricing
FluentMigrator costs free. The free plan is the Apache-2.0-licensed framework distributed through NuGet; there is no free trial because the project is free. Provider packages are selected separately, so the framework price does not mean every database provider is bundled into one package. This is a strong fit for teams comfortable assembling their own .NET dependencies, with no paid tier or seat limit stated.
Platforms
FluentMigrator supports Linux, macOS and Windows, and offers a self-hosted option. The cross-platform dotnet-fm CLI helps teams use it across those operating systems, but the quick start requires .NET 8.0 or later, a supported database, and basic C# and database knowledge.
Who it's for
Choose FluentMigrator if your team already builds in C#, needs versioned database changes, and values both migration tracking and the ability to define rollbacks. Its preview, validation and CI/CD examples suit teams that want migrations to fit into a controlled delivery process. It is a poor match for teams without .NET 8.0 or C# expertise, or for those seeking a migration workflow outside .NET conventions. Project support is community-oriented through GitHub Discussions, bug reports and feature requests, and the fluent-migrator Stack Overflow tag.
Pros and cons
- Pro: Free and Apache-2.0 licensed, with distribution through NuGet, making it accessible to teams adopting an open-source .NET framework.
- Pro: Up and Down methods, automatic VersionInfo tracking, and SQL preview and validation support a traceable migration workflow.
- Pro: Documented providers cover several widely used databases, while execution options and CI/CD examples accommodate different .NET delivery setups.
- Con: The .NET 8.0 and C# prerequisites make it unsuitable for teams whose application and database workflows do not use .NET.
- Con: Provider packages must be selected separately, adding a dependency choice before the framework is ready for a particular database.
- Con: Rollback behavior must be expressed in each migration's Down method, so teams remain responsible for defining a useful reversal.
Alternatives
For a broader comparison, see the Database Migration Tools category. Choose Skeema if its free Community plan's tables, stored procedures and functions, 18 linter checks, Linux and macOS support, and Apache 2.0 license better match your needs; its Plus plan is $124 a month. Atlas is an open-core alternative with an Apache 2.0 core engine and advanced features available in proprietary offerings. Choose dbmate for a free, open-source migration tool without a stated paid SaaS upsell, or Goose for another free, open-source database migration tool.
pgroll is worth considering if PostgreSQL 14.0 or later and a single cross-platform binary suit your environment. Refinery is a free, MIT-licensed SQL migration toolkit whose database drivers must be selected as features. Doctrine Migrations is a free, MIT-licensed PHP library installed with Composer or downloaded as a PHAR. DeepFilterNet is another free, open-source option, licensed under MIT or Apache-2.0.
Verdict
FluentMigrator is an easy recommendation for .NET teams that want database migrations expressed in version-controlled C#, with tracking, rollback methods and useful preview and automation paths at no cost. Its main reason to choose is that focused fit; its main reason to look elsewhere is just as clear: teams outside the .NET and C# ecosystem will be better served by a tool aligned with their stack.
Alternatives to FluentMigrator
- 1

Atlas
Free planOpen sourceWebAPILinuxmacOS8.3From $39 a month - 2
DeepFilterNet
Free planOpen sourceAPILinuxmacOSSelf-hosted7.6Free plan - 3
pgroll
Free planOpen sourceLinuxmacOSSelf-hostedWindows7.3Free plan - 4

Skeema
Free planLinuxmacOSWindows6.9From $649 a year - 5

Bytebase Enterprise
Free planWebAPISelf-hosted6.8From $20 a month - 6
Sqitch
Free planLinuxmacOSSelf-hostedWindows6.7Free plan
