---
title: "From 20+ seconds to 2 - faster SQL Database Project .dacpac deployments are finally here (preview)"
url: https://daily.dev/posts/from-20-seconds-to-2---faster-sql-database-project-dacpac-deployments-are-finally-here-preview--v5pajiwa7
source_url: https://erikej.github.io/dotnet/dacfx/sqlserver/sqlpackage/2026/08/06/faster-dacpac-deployments.html
type: article
source: "We Are .NET"
published: 2026-08-06T18:14:46.689Z
updated: 2026-08-06T18:15:18.029Z
tags: ["microsoft-sql-server"]
reading_time: 5
upvotes: 0
comments: 0
language: en
---

> ## Documentation Index
> Fetch the complete documentation index at: https://daily.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# From 20+ seconds to 2 - faster SQL Database Project .dacpac deployments are finally here (preview)

**[We Are .NET](https://daily.dev/sources/wearedotnet)** · 5 min read · 0 upvotes · 0 comments

## Summary

DacFx 170.5.60-preview introduces a fast comparison feature that reduces SqlPackage .dacpac publish times from 20+ seconds down to ~2 seconds. The improvement works by caching the model checksum and deployment options in a new `__DacFxDeploymentHistory` system table in the target database. Subsequent publishes can then skip the expensive model reverse-engineering and plan generation steps when nothing has changed. Two new parameters enable the feature: `/p:LogDeployment=true` (required to create and populate the history table) and `/p:EnableFastComparison=true`. A known limitation is that changes to post-deployment scripts are not currently detected, and some .dacpac files may be missing a ProjectGuid needed for the feature to work.

## Full article

daily.dev links to this article rather than hosting it. Read it at the original source: <https://erikej.github.io/dotnet/dacfx/sqlserver/sqlpackage/2026/08/06/faster-dacpac-deployments.html>

## Questions this post answers

### How do I enable fast dacpac deployments with SqlPackage to skip the 20-second startup overhead?

Install the SqlPackage preview tool (version 170.5.60.2 or higher) via `dotnet tool install -g microsoft.sqlpackage --prerelease`, then publish with both `/p:LogDeployment=true` and `/p:EnableFastComparison=true`. The first flag creates a `__DacFxDeploymentHistory` table in the target database storing the model checksum; the second flag lets subsequent publishes skip model reverse-engineering when the checksum matches, dropping publish time from 20+ seconds to ~2 seconds.

_Developers iterating on database schemas track DacFx preview updates like this on daily.dev before they hit CI pipelines._

### What does the __DacFxDeploymentHistory table store and why does SqlPackage create it?

SqlPackage creates `[dbo].[__DacFxDeploymentHistory]` when `/p:LogDeployment=true` is set. It stores deployment_id, dacpac_name, project_id (ProjectGuid), dac_version, deployment_options (XML), model_checksum (varbinary 32), date_created, created_by, and description. On the next publish, SqlPackage queries this table by ProjectGuid to check whether the model checksum and deployment options match, and skips full model comparison if they do.

_Teams managing frequent iterative deployments find schema-tooling details like these on daily.dev._

### What are the known limitations of the SqlPackage EnableFastComparison preview feature?

Two known limitations exist. First, changes to post-deployment scripts are not detected by the fast comparison check — only schema changes and deployment option changes trigger a full model comparison, so a publish may incorrectly skip execution after a post-deployment script change. Second, .dacpac files missing a ProjectGuid will not benefit from the speed-up at all, as the ProjectGuid is required to scope history lookups. Both issues are tracked in microsoft/DacFx#824.

_Staying on top of preview caveats like these before rolling out to CI is easier when dacpac tooling news surfaces on daily.dev._

## Similar posts on daily.dev

- [Visual Schema Compare for SDK Style SQL Database Projects in Visual Studio and SSMS](https://daily.dev/posts/visual-schema-compare-for-sdk-style-sql-database-projects-in-visual-studio-and-ssms-kkfy1kuxf) · We Are .NET · 1 upvotes · 0 comments
- [Instantly deploy T-SQL programmability changes on save in SQL Projects with SQL Project Power Tools](https://daily.dev/posts/instantly-deploy-t-sql-programmability-changes-on-save-in-sql-projects-with-sql-project-power-tools-wnurlnn5z) · We Are .NET · 0 upvotes · 0 comments
- [Publish SQL Database Projects as Container Images with MSBuild.Sdk.SqlProj](https://daily.dev/posts/publish-sql-database-projects-as-container-images-with-msbuild-sdk-sqlproj-ckaprejsp) · We Are .NET · 0 upvotes · 0 comments

---

Tags: [#microsoft-sql-server](https://daily.dev/tags/microsoft-sql-server)

[View this post on daily.dev](https://daily.dev/posts/from-20-seconds-to-2---faster-sql-database-project-dacpac-deployments-are-finally-here-preview--v5pajiwa7)
