# Data Quality Checks That Run Every Morning

Source: https://maito.app/workflows/check-data-for-problems

Maito checks your tables on a schedule for missing rows, duplicates and sudden jumps, and posts the problems in Slack before anyone trusts a bad number.

Spot missing data, duplicates and sudden jumps before anyone trusts a bad number.

[Data](https://maito.app/workflows/team/data) · On a schedule · Updated October 19, 2026

Works with

-   Slack
-   Email
-   [BigQuery](https://maito.app/workflows/tool/bigquery)
-   [Supabase](https://maito.app/workflows/tool/supabase)

## How do you run data quality checks automatically?

To run data quality checks automatically, set up a Loop in Maito. On your schedule it queries BigQuery or Supabase, compares each table with its normal volume, and looks for gaps, duplicate ids and sudden jumps. It posts only the problems in Slack, with row counts and the likely cause.

## How it's done today

Bad data is found in the board deck.

## What Maito does

1.  Check key tables each day
2.  Flag missing rows, duplicates and odd jumps

## Example

Loop run: Daily 7:00 AM · Data load check

**Maito** (7:00 AM):

**2 problems in yesterday's loads (Oct 18)**

• **orders:** no rows from 02:00 to 04:00 UTC. That window normally has about 410 orders an hour, so roughly 820 are missing.  
• **payments:** 1,904 rows in the EU region, versus about 950 on a normal day. 951 payment\_ids appear twice.

**The catch:** the doubled payments make yesterday's revenue read $38,200 instead of about $19,100. The Monday digest will show the wrong number unless this is fixed before then.

14 other tables looked normal. I only read the data; nothing was changed.

**Nina** (7:12 AM):

List the duplicated payment ids.

**Maito** (7:13 AM):

Attached: duplicate-payments-oct-18.csv, 951 ids with both load timestamps. All were loaded at 03:10 and again at 03:40, so it looks like a retry of the same job.

## How to set it up

On a schedule Check data for problems

Ask your agent

“Every morning at 7, check yesterday's loads in BigQuery for missing rows, duplicates and odd jumps. Post problems in #data-alerts. If everything is clean, say nothing.”

Connect database

-   BigQuery
-   Supabase

Not connected yet? Your agent sends you a link to sign in.

## What it won't do

Maito finds patterns that look wrong against recent history. It cannot tell whether an unusual number is a real event or a bug without someone confirming.

## Questions

### Which databases can it check?

BigQuery and Supabase. Maito runs the checks as queries against the tables you point it at.

### How does it know what is normal?

It compares each load with recent days and weeks, such as typical hourly volume. You can tell it the thresholds you care about, and it will remember them.

### Does it fix the data?

No. It reports what it found and lists the affected ids when asked. Cleaning up stays with your data team.

## More data workflows

-   [Answer data questions in Slack Ask a question in plain words and get the number, with the query behind it. Data · When you ask Works with BigQuery, Supabase.](https://maito.app/workflows/answer-data-questions-in-slack)
-   [Chart a metric Get a chart of any metric over time, ready to paste into a deck. Data · When you ask Works with BigQuery, Supabase.](https://maito.app/workflows/chart-a-metric)
-   [Explain a dashboard number Know what a number means and how it's calculated. Data · When you ask Works with BigQuery, Supabase, Notion, Confluence.](https://maito.app/workflows/explain-a-dashboard-number)
-   [Write and fix SQL Get a working query from a description, or fix a broken one. Data · When you ask Works with BigQuery, Supabase.](https://maito.app/workflows/write-and-fix-sql)
-   [Send a weekly metrics digest Key numbers for the company every Monday, with what changed and why. Data · On a schedule Works with BigQuery, Supabase, Stripe, PayPal.](https://maito.app/workflows/send-a-weekly-metrics-digest)
-   [Review possible duplicate customers before merging See why two customer records might be the same person, then decide. Nothing merges on a shared name. Data · When something happens Works with HubSpot, Salesforce, Airtable, Microsoft 365.](https://maito.app/workflows/review-possible-duplicate-customers-before-merging)

[See all workflows](https://maito.app/workflows)

## Put your AI teammate to work.

Set it up in minutes. Start with this one, and let it earn the next one.

[Put Maito to work](https://maito.app/login?returnTo=%2Fworkflows%2Fcheck-data-for-problems)[Book a demo](mailto:support@maito.app?subject=Maito%20demo)
