Favicon of Elementary

Elementary

Elementary is an Apache-2.0 data observability tool built for dbt projects: a dbt package and CLI collect test results and run anomaly detection on freshness, volume, and custom metrics, with Elementary Cloud adding column-level lineage, ML monitors, and incident workflows.

LicenseOpen source (permissive)· Apache-2.0
DeploymentSelf-hostedManaged
PricingFreeSubscription
Operational complexityLow
WorkloadBatch
LanguagePython

Use it when

  • The transformation layer is dbt and observability should install into the project rather than beside it: a dbt package plus CLI, nothing new to deploy.
  • The security conversation should be short: the open-source path reads structure, test results, and patterns rather than the underlying data.
  • Anomaly detection should learn baselines from history on freshness, volume, and column metrics, alongside the dbt tests you already run.
  • Alerts must route per test or per model to Slack, Teams, PagerDuty, or Jira rather than into one firehose.

Think twice when

  • Data arrives outside dbt: a dbt project is the unit of observability, so anything else is out of the picture.
  • You need column-level lineage, ML monitors, or incident management on the free tier; those are Elementary Cloud.
  • The warehouse is not one of the seven dbt targets it reaches.

How it runs

The package runs during dbt invocations through an on-run-end hook, writing logs and metrics into its own schema in your warehouse; the CLI generates reports and sends alerts. There is no server in the open-source path. Elementary Cloud adds the hosted platform, lineage, ownership tagging, and incidents.

Details

Compare

How Elementary answers the questions Data Quality turns on.

Data Quality
How it works
Authoring modeldbt YAML, because the tests are dbt tests, anomaly and schema tests are declared beside a model like any other test and inherit dbt's severity model. A dbt project is the unit of observability, so data arriving outside dbt is outside the picture
Detection modelLearned baselines rather than thresholds, every anomaly test takes a training set, a detection set and an algorithm, buckets rows by a timestamp field and compares recent buckets against earlier ones. Alongside that it simply collects the pass or fail of every dbt test that already existed
Built-in monitorsFive anomaly tests plus schema checks (volume, freshness, column anomalies over metrics like null counts and value lengths, dimension anomalies over the frequency of values in chosen fields, and an all-columns variant picking monitors by data type) and it harvests results from dbt's own tests, dbt-utils, dbt-expectations and custom SQL
Prevention or detectionWhatever dbt does: these are dbt tests, so severity decides whether a failure errors or warns and a failing test fails the run. In practice the anomaly tests run against data that has already landed, which makes the posture detection with prevention available rather than the other way round
LineageColumn-level from source through to BI, and Cloud only, the open-source package has the dbt graph and nothing above it, with impact analysis and root cause arriving on the paid platform
Alerts and deliverySlack, Microsoft Teams, PagerDuty, Opsgenie, Jira, Linear and webhooks, configurable per test or per model rather than one firehose
Incidents and ownershipIncident management in Cloud: open issues carrying a status and an assignee, with ownership and criticality tagging so an alert reaches the team that owns the model rather than the channel everyone muted
Running it
What you runInside dbt: an on-run-end hook collects run artifacts and the tests execute during dbt test, writing logs and metrics into Elementary models in a schema of their own in your warehouse. No server at all in the open-source path; Elementary Cloud is the hosted platform above it
Connections
ConnectorsSeven warehouses, and only the ones dbt itself reaches, Snowflake, BigQuery, Redshift, Databricks, Postgres, Athena and ClickHouse. There is no connector layer of its own, which is the architecture rather than a gap
Cost
Billing unitSeats and monitored tables together, editor seats, viewer seats from Enterprise upward, and a table allowance with an overage per additional thousand: Scale at 10 editors and 1K tables, Enterprise at 20 editors plus 40 viewers and 3K, Unlimited at unrestricted seats and 3K. No figures are published, and the 30-day trial lifts every limit

Share:

Alternatives to Elementary

Favicon

 

  
  
Favicon

 

  
  
Favicon