
Pact
Pact is a code-first tool for contract testing of HTTP and message integrations.
What Pact is
Pact is a code-first tool for contract testing of HTTP and message integrations. Automated consumer tests create contracts describing specific interactions between consumer and provider applications. Teams can then test each side separately against that shared contract, without deploying the entire system. Pact has implementations for languages including JavaScript, Java and JVM languages, .NET, Go, Python, Swift and Objective-C, Ruby, PHP and C++. Its CLI includes mock and stub servers, a provider verifier, a Broker client and a plugin CLI. The open-source Pact Broker shares contracts and verification results; teams can host and administer it themselves, and use CI/CD workflows to check whether application versions are compatible for deployment. The verifier supports HTTP and synchronous and asynchronous messages, with plugins for gRPC, Avro and CSV. Pact is generally implemented by developers and is most useful when a team controls both sides of an integration. Its self-hosted Broker requires the operator to handle security, maintenance and upgrades.
Good
- Tests consumer and provider applications in isolation.
- Implementations cover more than 10 languages.
- CLI includes mock and stub servers.
- Broker supports CI/CD compatibility checks.
Watch out
- The free Pact Broker is self-hosted.
- Operators handle Broker security, maintenance and upgrades.
- Not intended for performance or load testing.
Who it suits
Pact suits development teams that control both the consumer and provider applications and want to test their integration contracts independently. It is generally implemented by developers.
Verdict
Pact focuses on checking integrations against contracts shared between consumer and provider applications. It is a better fit when a team can maintain both sides and operate the Broker than for load testing or loosely coordinated providers.
Plans and prices
From Pact's own pricing page, checked 4 Oct 2026.
| Plan | Price | What it gives you |
|---|---|---|
| PactFlow Starter | Free | Unlimited users · 2 integrations · Bi-Directional Contract Testing · FREE |
| Pact open-source tooling | Free | Open-source contract testing tools · a Pact Broker must be hosted and operated separately for shared contract workflows · The official site presents Pact as open-source tooling and links to GitHub; it does not state a price. |
| PactFlow Team (yearly) | $115.42 a month | 50 integrations · Community support · Bi-Directional Contract Testing · GitHub and Google Login · 14-day free trial · USD per month (billed yearly as $1,385) |
| PactFlow Team (monthly) | $127 a month | 50 integrations · Community support · Bi-Directional Contract Testing · GitHub and Google Login · 14-day free trial · USD per month |
| PactFlow Enterprise | Priced on request | Advanced user and security management · Dedicated support · SaaS or on-premise deployment · Contact Sales |
The facts
Each one read from Pact's own pages, with the date it was checked.
What it does
- Broker
- The open-source Pact Broker shares contracts and verification results; it can be self-hosted and administered by the user.checked 3 Oct 2026
- Broker role
- The Pact Broker shares consumer-driven contracts and verification results, and can report which application versions can be deployed safely together.checked 4 Oct 2026
- CI/CD
- The Pact Broker supports CI/CD workflows, including compatibility checks that indicate whether application versions can be deployed together.checked 3 Oct 2026
- CLI tools
- The Pact CLI includes mock and stub servers, a provider verifier, a broker client and a plugin CLI.checked 4 Oct 2026
- How contracts work
- Pact contracts are generated by automated consumer tests and describe concrete interactions between consumer and provider applications.checked 3 Oct 2026
- Integrations
- PactFlow's Bi-Directional Contract Testing integrates with OpenAPI and lists Cypress, Postman and Wiremock as tools for writing contracts.checked 4 Oct 2026
- Intended users
- PactFlow describes its service as supporting teams building microservices, messaging systems or cloud-native systems.checked 4 Oct 2026
- Languages
- The Pact site lists implementations for JavaScript, Java and JVM languages, .NET, Go, Python, Swift and Objective-C, Ruby, PHP, and C++.checked 3 Oct 2026
- Language support
- Pact implementations are available in more than 10 languages, including Java, Rust, JavaScript, .NET, Go, PHP, Python, Ruby, Swift/Objective-C, Scala and C++.checked 4 Oct 2026
- Messaging
- Pact abstracts message testing from the queueing technology and documents examples involving ActiveMQ, RabbitMQ, SNS, SQS, Kafka, and Kinesis.checked 3 Oct 2026
- Notable limit
- The free Pact Broker is self-hosted, so its operator is responsible for security, maintenance and upgrades.checked 4 Oct 2026
- Not suitable for
- Pact documentation says it is not intended for performance or load testing, provider functional testing, or APIs whose many consumers cannot maintain direct relationships with the provider team.checked 3 Oct 2026
- Protocol support
- The Pact verifier supports HTTP, asynchronous and synchronous messages, and Pact plugins; plugins include support for gRPC, Avro and CSV.checked 4 Oct 2026
- Purpose
- Pact is a code-first tool for testing HTTP and message integrations with contract tests.checked 4 Oct 2026
- Security
- PactFlow says it encrypts data at rest with AES-256, enforces TLS 1.2 or higher, and stores data and backups in AWS Sydney.checked 4 Oct 2026
- Security administration
- PactFlow's Enterprise plan lists SAML single sign-on and role-based access management, and the security page describes SCIM support for automated user, group and role provisioning and deprovisioning.checked 4 Oct 2026
- Security distinction
- The Pact site describes SSO, API tokens, audit trails, and secrets as premium PactFlow features rather than core Pact features.checked 3 Oct 2026
- Support
- Pact's official site directs users to documentation, a Slack channel and partner support; PactFlow plans list email support for Team and dedicated account and customer care for Enterprise.checked 4 Oct 2026
- Testing model
- Pact contract tests check integrations in isolation against a shared understanding documented in a contract.checked 4 Oct 2026
- Testing workflow
- Pact lets teams test consumer and provider applications in isolation without deploying the entire system.checked 3 Oct 2026
Where it runs
- Platforms
- Pact CLI installation scripts support Linux, macOS and Windows on ARM64 and AMD64.checked 4 Oct 2026
The full review of Pact
Overview
Pact is a code-first tool for contract testing HTTP and message integrations. It suits development teams that can coordinate changes to both consumer and provider applications. Its strength is checking whether those applications agree on real interactions without deploying the full system; it is not a substitute for load or provider functional testing.
Key features
Consumer tests generate contracts describing concrete interactions with a provider. Each side can then be tested in isolation against that shared understanding, which makes Pact useful for catching compatibility problems before teams try to deploy an integrated system.
The open-source CLI includes mock and stub servers, a provider verifier, a Broker client and a plugin CLI. The verifier handles HTTP and synchronous or asynchronous messages, with plugins including gRPC, Avro and CSV. Message tests are abstracted from the queue technology; documented examples span ActiveMQ, RabbitMQ, SNS, SQS, Kafka and Kinesis.
The Pact Broker shares contracts and verification results. It can also report whether particular application versions can be deployed together, supporting CI/CD compatibility checks. That is valuable when multiple services change independently, but the open-source Broker must be hosted and operated by the team, including its security, maintenance and upgrades.
Implementations cover more than 10 languages, including JavaScript, Java and JVM languages, .NET, Go, Python, Swift and Objective-C, Ruby, PHP, C++, Rust and Scala. Documentation recipes cover tools and scenarios such as GraphQL, Cypress, Jest, Mocha, Kafka, AWS Lambda and API Gateway. That breadth helps teams adopt contracts in an existing stack, though the workflow still depends on developers maintaining the tests and provider relationship.
Pricing
Pact's open-source tooling is free. It gives teams contract testing tools, but shared workflows using the Broker require a separately hosted and operated Broker.
PactFlow Starter is free and includes unlimited users, two integrations and bi-directional contract testing. It is a low-cost way to start with hosted contract workflows, but the two-integration cap limits its fit as a service estate grows.
PactFlow Team costs $115.42 a month, billed yearly as $1,385, or $127 a month on monthly billing. Both options include 50 integrations, community support, bi-directional contract testing, GitHub and Google Login, and a 14-day free trial. Yearly billing lowers the monthly rate; monthly billing costs more but avoids the annual billing term.
PactFlow Enterprise has custom pricing and includes advanced user and security management, dedicated support, and SaaS or on-premise deployment. PactFlow identifies SAML single sign-on and role-based access management as Enterprise features; SCIM supports automated user, group and role provisioning and deprovisioning. PactFlow also describes encryption at rest with AES-256, TLS 1.2 or higher, and storage of data and backups in AWS Sydney. These are PactFlow offerings, not core Pact features.
Platforms
Pact supports API workflows and Linux, macOS and Windows, with self-hosted deployment for the Broker. The Broker's flexibility comes with operational responsibility when self-hosted.
Who it's for
Pact is best for developer-led teams that control both sides of an integration and can keep consumer expectations and provider verification aligned. Teams working across many consumers without direct relationships to provider teams are a poor fit, as are people seeking performance or load testing, or provider functional testing.
Pros and cons
- Pro: Consumer-driven contracts and isolated verification let teams check integration compatibility without deploying the whole system.
- Pro: Broad language, protocol and messaging support makes the approach applicable across varied service stacks.
- Pro: Broker compatibility checks can help teams decide whether application versions are safe to deploy together.
- Con: Self-hosting the open-source Broker leaves security, upgrades and maintenance to its operator.
- Con: Pact depends on close consumer-provider coordination, so it does not suit loosely connected providers with many consumers.
- Con: It does not cover load testing or provider functional testing, so teams needing those checks need other testing approaches.
Alternatives
Choose Microcks if a free, open-source, community-driven CNCF Incubating project better fits your preference for an open-source API testing platform.
PactFlow is the hosted Pact-related option to consider when you want a freemium service rather than operating the open-source Broker yourself.
Specmatic is an alternative to consider for contract testing alongside API resilience testing and service virtualization.
SpecShield may suit a narrower workflow centered on spec comparisons and GitHub pull-request checks.
Pact Broker is the focused option for teams looking specifically for a contract-sharing Broker.
Karate is a broader testing framework to consider when REST, GraphQL or SOAP API testing, UI automation or performance testing is the priority.
ContractCase is another contract-testing option.
Entente is another option to consider.
Compare more tools in Contract Testing Tools, API Testing Tools, Integration Testing Tools and API Design Tools.
Verdict
Choose Pact when developers can maintain consumer and provider tests together and need a shared, deploy-aware contract workflow across services. Its language and protocol breadth and isolated verification are compelling strengths; look elsewhere if you need load or provider functional testing, or cannot operate the self-hosted Broker and do not want a PactFlow plan.
Getting started
- Open https://pact.io/
- Choose the Pact open-source tooling or a PactFlow plan
- Install the implementation for your programming language
- Generate contracts from automated consumer tests
- Run provider verification with the CLI
- Host or connect to a Pact Broker for shared workflows
Limits worth knowing
The free Pact Broker is self-hosted, so its operator handles security, maintenance and upgrades. PactFlow Starter provides two integrations.
Questions
Is Pact free?
Pact open-source tooling is listed as free. PactFlow Starter is also free, while Team plans cost $115.42 a month billed yearly or $127 a month billed monthly; Enterprise pricing requires contacting sales.
Which platforms are supported?
Pact lists API, Linux, macOS, self-hosted and Windows platforms.
Does Pact support CI/CD?
Yes. The Pact Broker supports CI/CD workflows with compatibility checks indicating whether application versions can be deployed together.
Can Pact test messaging systems?
Yes. It supports synchronous and asynchronous messages, with examples involving ActiveMQ, RabbitMQ, SNS, SQS, Kafka and Kinesis.
Is the Broker hosted for me?
The open-source Pact Broker can be self-hosted and administered by the user. PactFlow also offers SaaS or on-premise Enterprise deployment.
Alternatives to Pact
- 1

Karate
Free planOpen sourceAPIExtensionLinuxmacOS8.2From $100 a year - 2

PactFlow
Free planWebAPILinuxSelf-hosted7.6From $115.42 a month - 3

Microcks
Free planWebAPIExtensionLinux7.2Free plan - 4
oasdiff
Free planWebAPILinuxmacOS7.2From $100 a month - 5

Confluent Cloud
Free planWebAPILinux7.1From $385 a month - 6
Pact Broker
Free planWebAPILinuxSelf-hosted6.8From $115.42 a month
