Skip to content
SPECIFICTION
Get listed

Pact vs Smithy

Pact

pact.io

Smithy

smithy.io

Side by side

FigurePactSmithy
Price from$115.42/mo—
Free planYes—
Free trialYes—
Open source——
WindowsYesYes
macOSYesYes
LinuxYesYes
APIYes—
Self-hostedYes—
Plans published50
Spec score · API Design Tools8.9 (#5)7.1 (#24)
IntegrationsPactFlow's Bi-Directional Contract Testing integrates with OpenAPI and lists Cypress, Postman and Wiremock as tools for writing contracts.Smithy build configurations can load extensions and code generators through Maven dependencies and plugins, including AWS-specific dependencies and an OpenAPI generator.
Intended usersPactFlow describes its service as supporting teams building microservices, messaging systems or cloud-native systems.Smithy is presented for teams defining service APIs and generating SDKs, server code, and documentation across programming languages.
PurposePact is a code-first tool for testing HTTP and message integrations with contract tests.Smithy is an open-source interface definition language for modeling services and SDKs.
SecurityPactFlow says it encrypts data at rest with AES-256, enforces TLS 1.2 or higher, and stores data and backups in AWS Sydney.The Smithy CLI installation guide says release archives are PGP-signed and hashed, and describes verifying signatures and checksums.
SupportPact'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.The CLI guide directs users with suggestions or issues to create an issue in the Smithy GitHub repository.

Plans

Pact

  • PactFlow StarterFree
  • Pact open-source toolingFree
  • PactFlow Team (yearly)$115.42 a month
  • PactFlow Team (monthly)$127 a month
  • PactFlow EnterprisePriced on request

Pact pricing →

Smithy

No plans published.

Smithy pricing →

In their own words

Pact

Pact is a free, code-first tool for testing HTTP and message integrations with contract tests. Automated consumer tests create contracts describing concrete interactions between consumer and provider applications. Teams can then test each side in isolation against that shared contract, without deploying the entire system. Pact implementations are available for more than 10 languages, including JavaScript, Java, .NET, Go, Python, Ruby, Swift and Objective-C, Scala, Rust, 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 its CI/CD workflows to check whether application versions can be deployed together. The verifier supports HTTP and asynchronous and synchronous messages, while plugins include gRPC, Avro, and CSV support. Documentation includes recipes for tools and scenarios such as GraphQL, Cypress, Kafka, and AWS Lambda. Pact is most useful when teams control both consumer and provider development. The free Broker is self-hosted, leaving its security, maintenance, and upgrades to its operator.

Visit pact.io

Smithy

Smithy has no write-up on Specifiction yet; its figures are above.

Visit smithy.io