How Calethia Compares
Choosing a compliance solution? Understand how Calethia's policy-as-code approach differs from traditional tools and specifications.
Feature Comparison
See how key features stack up across different approaches to compliance.
| Feature | Calethia | OSCAL | Vanta |
|---|---|---|---|
| Policy definition approach | Python code with @policy decorator | XML/JSON specification files | Pre-built policies (config-based) |
| Git-native architecture | |||
| IDE support & type safety | |||
| Custom policy logic | Full Python expressiveness | Limited to spec structure | Restricted customization |
| Framework coverage | SOC2, ISO27001, HIPAA, CIS, custom | Any (it's a data format) | SOC2, ISO27001, HIPAA, GDPR |
| Evidence collection | Automated + cryptographically signed | Manual export | Automated via agents |
| Self-hosted option | |||
| Pricing model | Feature-based (not per-seat) | Free (it's a spec) | Per-seat subscription |
Detailed Comparisons
Understand the fundamental differences in approach.
The NIST Specification
OSCAL (Open Security Controls Assessment Language) is a government-backed data format for describing security controls, assessments, and compliance documentation. It's a specification, not a product.
Key Differences
- OSCAL defines how to describe controls in XML/JSON format
- It requires tooling to be useful - OSCAL itself doesn't run policies
- Designed for documentation and data exchange, not enforcement
- Calethia could potentially export to OSCAL format in the future
Why Choose Calethia
- Calethia is a complete product, not just a specification
- Policies execute and enforce, not just describe
- Python code with IDE support vs verbose XML/JSON
- Automated evidence collection and cryptographic signing
The Agent-Based Approach
Vanta is a popular compliance automation platform that uses agents installed on endpoints to continuously monitor security controls and collect evidence.
Key Differences
- Agent-based monitoring requires installing software on endpoints
- Pre-built policies with limited customization options
- Designed primarily for GRC teams, not engineering teams
- Per-seat pricing that scales with team size
Why Choose Calethia
- Policy-as-code approach with full Python expressiveness
- Git-native: policies live in your repo, reviewed in PRs
- No agents required - API-based evidence collection
- Developer-first experience with IDE autocomplete and type safety
The Policy-as-Code Advantage
Write policies in Python with full IDE support. Version control them in Git. Review changes in pull requests. This is how modern engineering teams work.
Example: MFA Enforcement Policy
Full Python expressiveness with type-safe framework mappings
from calethia import policy, Severity
from calethia.aws import iam
from calethia.frameworks import SOC2, CIS_AWS
@policy(
id="aws.iam.mfa_required",
name="IAM Users Have MFA",
severity=Severity.HIGH,
frameworks=[SOC2("CC6.1"), CIS_AWS("1.10")],
)
def check_mfa(ctx: iam.Context) -> iam.Result:
"""Ensure all IAM users with
console access have MFA enabled."""
for user in ctx.list_users():
if user.has_console_access and not user.mfa_enabled:
ctx.fail(user.to_resource(), "User has no MFA")
else:
ctx.pass_(user.to_resource(), "User has MFA")
return ctx.result()Ready to see the difference?
Schedule a demo to see how Calethia's policy-as-code approach can transform your compliance program.