OSS TanbouSign in with GitHub

encode data-quality rules as Expectations and share validation results and documentation from Python

About these scores

OSS scale score is an unbounded metric that log-compresses and weights Stars, Watchers, Forks, and Contributors. Discovery score is the current OSS scale score minus the score at discovery. Update pace is commits in the last 30 days, growth momentum is the OSS scale score difference within the recent observation window, and OSS health is a 0–100 rating based on available recency, Community Health, and release data.

Stars
11,856
Primary language
Python
License
Apache-2.0
Repository last updated
Oct 2, 2026
On this page

Overview

Great Expectations GX Core is a Python framework for expressing data-quality rules as Expectations and validating data sources against them. Rules can live in code, be reused across validation workflows, and feed results and generated documentation for ongoing pipeline quality checks.

Features and best fit

Based on official documentation; not hands-on tested · Content checked:

Key features

Express column and table quality conditions as reusable Expectations

GX Core treats Expectations as expressive and extensible unit tests for data, covering reusable checks around ranges, nullability, types, regex patterns, and other quality constraints.

Sources: [1]

Manage data sources and validation workflows from a Data Context

The README quick start creates a Data Context with gx.get_context(). The context is the organizing point for data sources, validation configuration, and environment-specific checks.

Sources: [1]

Generate documentation from validation results to share data-quality state

Validation results can feed generated documentation for groups of Expectations, making quality rules and their outcomes easier for teams to review together.

Sources: [1]

Best fit

Fits ETL, ELT, and analytics pipelines that need reproducible data-quality gates

It is useful when Python or SQL-oriented pipelines need versioned checks for schema drift, invalid values, and other quality regressions before or after data moves through production workflows.

Sources: [1][2]

Before adoption

Stable 1.23.2 normally supports Python 3.10 through 3.13

The 1.23.2 setup.py declares >=3.10,<3.14 for normal installs. Setting GX_PYTHON_EXPERIMENTAL removes the upper bound, so later Python versions should be evaluated separately before production use.

Sources: [3]

SQL backends require driver, dialect, and SQLAlchemy compatibility checks

Release 1.23.2 addresses several problems exposed by SQLAlchemy 2.1 and temporarily keeps Snowflake and Databricks extras below 2.1. Review the constraints for each database extra used by the project.

Sources: [2]

Official sources

  1. [1]GX Core 1.23.2 README(2026-10-04)
  2. [2]GX Core 1.23.2 release(2026-10-04)
  3. [3]GX Core 1.23.2 Python support metadata(2026-10-04)
  4. [4]GX Core Apache 2.0 license(2026-10-04)
Supplemental curator note

The requested great-expectations/great_expectations repository now redirects to fivetran/great_expectations. The great_expectations package name and GX Core product identity continue.

Try it in 3 steps

  1. 1

    Create a virtual environment for GX Core 1.23.2

    Pin the stable 1.23.2 package. Normal support covers Python 3.10 through 3.13.

    python3 -m venv gx-demo && . gx-demo/bin/activate && python -m pip install --upgrade pip && python -m pip install 'great_expectations==1.23.2'
  2. 2

    Create a Data Context and check the version

    Validate the GX Core import and Data Context creation without connecting to an external data source.

    . gx-demo/bin/activate && python -c 'import great_expectations as gx; context=gx.get_context(); print(gx.__version__); print(type(context).__name__)'
  3. 3

    Construct an Expectation object

    Exercise the rule-definition API without running a validation or touching production data.

    . gx-demo/bin/activate && python -c 'import great_expectations as gx; e=gx.expectations.ExpectColumnValuesToNotBeNull(column="id"); print(type(e).__name__, e.column)'
Check the official README

Growth

Growth trends · Last 30 days

11,856 Stars

Trend data is still being collected.

Development activity

Last 90 days · weekly

Commits (last 30 days)
57
Open PRs
29

Development activity is still being collected.

Built with

Categories and tags

GitHub data

GitHub dataView detailed GitHub data

GitHub Topics

  • pipeline-tests
  • dataquality
  • datacleaning
  • datacleaner
  • data-science
  • data-profiling
  • pipeline
  • pipeline-testing
  • cleandata
  • dataunittest
  • data-unit-tests
  • eda
Stars
11,856
Forks
1,867
Watchers
102
Open issues
31
Contributors
405
Owner type
Organization
Primary language
Python
License
Apache-2.0
Repository last updated
Oct 2, 2026
Write a related article

Share a guide or use case for this OSS in Markdown. Articles are published after administrator approval.

Report incorrect information

Tell us if any listing information is incorrect or outdated.

After reading this page, do you know what to do next?