> ## Documentation Index
> Fetch the complete documentation index at: https://docs.synq.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Monitors overview

> Monitors are a core concept in Coalesce Quality, helping you proactively detect issues through self-learning and powerful anomaly detection

Monitors help you proactively detect issues such as missing or stale data, a change in a segment within your data, or a drop in a metric. The platform supports multiple monitor types, but it’s helpful to distinguish them by

* **Automatic monitors**—queries your metadata and can be set up with little configuration.
* **Custom monitors**—queries your raw data and requires a more custom implementation to support advanced use cases.

<Info>
  External tests (e.g. from dbt, SQLMesh, or Coalesce Transform) don't count toward your monitor limit. Integrate them to get a complete 360° view of your data health.
</Info>

### Automatic monitors

Automatic monitor queries your metadata such as the [Snowflake Information Schema](https://docs.snowflake.com/en/sql-reference/info-schema). This means they’re easy to configure as you don’t have to define a custom time dimension. As automatic monitors only query metadata, they incur minimal additional processing costs.

<CardGroup cols={4}>
  <Card title="Table Stats" href="/monitor-types/table-stats-monitor">
    The table stats monitor is an all-in-one monitor for row count, freshness, and delay. It's out recommended automatic monitor.
  </Card>

  <Card title="Freshness" href="/monitor-types/freshness-monitor">
    The freshness monitor looks at a table's timestamp and alerts you if it’s been too long since the last update.
  </Card>

  <Card title="Volume" href="/monitor-types/volume-monitor#default-volume-monitor">
    The volume monitor looks at the number of rows in a table to detect how much data is added or removed and alerts you of abnormal increases or decreases.
  </Card>

  <Card title="Schema">
    The schema monitor detects changes in your environment and alerts you of added, removed, or updated fields.
  </Card>
</CardGroup>

### Custom monitors

Custom monitors can help detect issues more nuanced to your business, such as a custom monitor detecting a change in business metrics or a drop in one segment. Custom monitors query your raw data and should be used selectively to avoid incurring unnecessary costs. Custom monitors have to be configured individually by, e.g., specifying a time dimension, a field to group the monitor by, and custom SQL for an aggregate metric (e.g., `avg(revenue)`)

<CardGroup cols={3}>
  <Card title="Custom volume" href="/monitor-types/volume-monitor#custom-volume-monitor">
    The custom volume monitor detects issues in the volume of data in a time series and is highly configurable.
  </Card>

  <Card title="Custom SQL" href="/monitor-types/custom-sql-monitor">
    The custom monitor detects issues in a time series, as represented by your specific SQL statement.
  </Card>

  <Card title="Field stats">
    The field stats monitor detects issues in the health of a specific field (e.g., %, not null or % empty values).
  </Card>
</CardGroup>

### How monitors work

Most monitors are based on a time series model to predict the expected value of, e.g., the number of rows or a business metric you specified as an SQL statement. If a new data point falls significantly outside our prediction confidence interval, we alert you of an anomaly. Our model uses seasonal decomposition to build the most robust anomaly detection.

<img src="https://mintcdn.com/synq-15/Uc7H-CPDlW17hyZt/images/monitors/overview1.png?fit=max&auto=format&n=Uc7H-CPDlW17hyZt&q=85&s=313a9402d3bd19e46079d8ef7f503987" alt="title" width="2000" height="1197" data-path="images/monitors/overview1.png" />

* **Seasonality**—our models account for intraday seasonality. This helps us learn if patterns, such as a spike by the start of the business day, are expected behavior.
* **Trend**—many datasets have a trend - e.g., a transactions table that’s always increasing as the business acquires more users. We detrend the data to ensure we only alert you of abnormal behaviors.
* **Sensitivity**—the algorithm looks at the past few days to understand the volatility of the data. If data changes a lot, it accepts a broader range of values. If the values are stable, they tighten the range and become more sensitive.
* **Trigger thresholds**—we detect patterns of anomalies. In case of a sharp change, we alert immediately. If we detect smaller anomalies, we wait for confirmation by the next observation to avoid triggering temporary small deviations.

### Monitor severity

Each monitor has a severity that helps you understand the current state.

* **OK**—the monitor is active, and no issues have been detected
* **Error**—the monitor is active, and an unresolved issue has been detected
* **Fatal**—the monitor is not functioning as expected (e.g., due to insufficient permissions to the data warehouse).
* **Inactive**—the monitor hasn’t yet finished learning the historical patterns of your data, or there’s not sufficient data for us to train the monitor

*Selecting a monitor shows you the current severity*

<img src="https://mintcdn.com/synq-15/Uc7H-CPDlW17hyZt/images/monitors/overview2.png?fit=max&auto=format&n=Uc7H-CPDlW17hyZt&q=85&s=247cdd1930e4f71ad3cc4bdcf9a6df5a" alt="title" width="2000" height="1232" data-path="images/monitors/overview2.png" />

*See all monitors by type and their severity in the [Health overview](https://app.synq.io/healthz/overview)*

<img src="https://mintcdn.com/synq-15/Uc7H-CPDlW17hyZt/images/monitors/overview3.png?fit=max&auto=format&n=Uc7H-CPDlW17hyZt&q=85&s=8f8760168470cb3d7b3e21805962d2aa" alt="title" width="2000" height="934" data-path="images/monitors/overview3.png" />
