# Profiler

Profiler helps you understand a table's structure, quality, and column-level patterns from the asset details page. You can generate a new profile, review historical runs, and compare how the table looked at different points in time.

## What you can do in Profiler

Use Profiler to:

* Generate a new profile for a table asset
* View the results from the latest and past profile runs
* Review table-level and column-level statistics

{% hint style="info" %}
Profiler replaces the previous Field Statistics experience and stores historical results so you can access them later.
{% endhint %}

{% embed url="<https://www.loom.com/share/a701ad9d7bce41cf9a8987d2647ca496>" %}

## Generate a new profile

To generate a profile for a table:

1. Open the table asset in the Catalog.
2. Click the **Profile** tab.
3. Click **Generate a new profile** and select a run option.
4. Wait for the profile to complete, or navigate away and return later.

When the profile starts, a new entry appears in the historical profiles list with an **In Progress** status.

There are three run options:

* **Quick Run** — Runs immediately with system defaults.
* **Run with latest settings** — Repeats the most recent configuration used for that asset. Falls back to system defaults if no previous configuration exists.
* **Configure profile run** — Opens a configuration modal where you can choose which columns to profile, apply a date/time filter, and set a sampling strategy.

{% content-ref url="profiler/configure-profile-run" %}
[configure-profile-run](https://docs.decube.io/catalog/profiler/configure-profile-run)
{% endcontent-ref %}

## How profile generation works

* Profiler supports one active profile job per asset at a time.
* The profiling job continues in the background even if you leave the page. You can return later to check the results.
* Very wide tables can hit profiling limits at around 250 columns. This is a rough guideline because numeric columns generate more metrics than non-numeric columns.
* Certain sources have limitations on profiling large or wide tables, which can lead to failed runs. For source-specific details, see [Profiler source support and limitations](https://docs.decube.io/catalog/profiler/profiler-source-support-and-limitations).

## Review profiling results

Each successful profile includes table-level statistics and column-level statistics.

### Table statistics

At the top of the results page, Decube shows summary statistics for the table in separate metric cards.

Depending on the data source, these cards can include:

* Total row count (derived from table metadata; does not change when date/time filters are applied)
* Sampling row count
* Whether the value is calculated exactly or estimated

If a statistic is not supported for the connected source, Decube does not show that metric card.

<figure><img src="https://1779874722-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FTw0qpCVzfrIXqS4FEg4T%2Fuploads%2FA97OaaBd1TE9uFo9nAq0%2FSCR-20260317-ogmn.png?alt=media&#x26;token=a0920bbb-347a-41ef-98e3-bf646cb530eb" alt=""><figcaption><p>Profile results showing table-level metric cards and column-level statistics for a successful run.</p></figcaption></figure>

### Column statistics

The column statistics table shows one row per column and can include:

* Column name
* Data type
* Null count and null percentage
* Unique count and unique percentage
* Additional metrics based on the column type

Depending on the data type and source, additional metrics can include values such as:

* Minimum and maximum values
* Mean, median, and standard deviation
* Zero count and zero percentage
* Minimum, maximum, and average string length
* Empty string count and empty string percentage
* True and false counts and percentages

## Understand unsupported values

Some profile metrics depend on the connected source, the table type, and the column data types.

If a metric is not available for a column or source, Decube shows it as `Unsupported` or does not display the metric at all.

Common reasons include:

* The source does not support a specific metric
* The column data type is not supported for profiling
* The result is based on an estimated row count instead of an exact count
* The source has engine-specific limits for profiling large or wide tables

## Source-specific behavior

Profiler behavior varies by source. For example, some connectors use exact row counts while others rely on estimates from source metadata. Some metrics, such as median or unique counts, are also unavailable on specific engines.

For source-specific limitations, sampling behavior, and unsupported metric types, see [Profiler source support and limitations](https://docs.decube.io/catalog/profiler/profiler-source-support-and-limitations).

## Permissions

To generate a profile, you need permission to create profiles for the asset.

If your access is removed, you can no longer open the Profile tab even if a profile job is already in progress.

For access setup details, see [Source-based Policies](https://docs.decube.io/group-access-policies/source-based-policies).

## FAQ

### Why do I not see any column results?

If the asset has no columns, if none of its columns are supported for profiling, or if the table is wide enough to hit profiling limits, the profile run can return an error state instead of results.

### Why is a newly added column missing from the profile?

Profiler uses the metadata available in Decube at the time the profile runs.

If you add a new column in the source and run a profile before the next metadata ingestion completes, the new column does not appear in that profile result. The column appears only in profiles generated after the next metadata ingestion updates the asset schema in Decube.

### Why does a historical profile show old columns?

Historical profiles are snapshots of the asset at the time the profile was generated. If the schema changes later, older profile runs can still show columns that no longer exist in the current table.

### Can I delete old profiles?

No. Historical profiles are retained and shown in reverse chronological order, with the newest run first.

### Can I download profile results?

Yes. After a profile completes, a **Download CSV** button is available on the results page. This exports the profiling results as a CSV file you can open locally.

### Can I profile only specific columns?

Yes. Select **Configure profile run** when generating a profile and choose **Selected Columns** in the column selection section. This is useful for wide tables or when you only need statistics on a subset of columns.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.decube.io/catalog/profiler.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
