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

# Liquid tags and coverage

> Define liquid-tag tenant filters, confirm per-chart coverage (direct or via foreign key), and control uncovered charts.

Liquid tags are the tenant isolation layer for embeds. You define the tag names in Vizkraft; your backend supplies values at session mint. See [Security](/embed/security) for the full model.

Open [app.vizkraft.com](https://app.vizkraft.com) → dashboard → **Embed** → **Liquid tags** / **Coverage**.

## Add liquid tags

1. Choose a **slug** (e.g. `department_id`)—this is the key your backend sends in `liquid`.
2. Map it to a table column type (numeric, text, date, datetime).
3. Mark **Required** (mandatory) for hard isolation, or leave optional if partners may omit it.
4. Save.

Optional tags that are omitted at mint leave that dimension **unscoped**. Prefer mandatory for true multi-tenant products.

## AI suggestions

On Liquid (and on Coverage when there is a gap), Vizkraft can suggest tags from schema—including one-hop foreign-key joins. Suggestions are scored; you still **confirm** before they apply at runtime.

## Coverage by chart

<img src="https://mintcdn.com/na-13f69f9a/d8x3eivmu3ABy64I/public/screenshots/embed/admin-coverage.png?fit=max&auto=format&n=d8x3eivmu3ABy64I&q=85&s=d0739b46966241d0b5a380481af6024d" alt="Coverage tab" width="3024" height="1646" data-path="public/screenshots/embed/admin-coverage.png" />

Each chart shows:

* **Covered** — at least one confirmed mapping for a liquid tag
* **Not covered** — no confirmed mapping
* Mapping kind: **Direct** (column on a table in the SQL) or **Via FK** (join path)

Confirm suggestions carefully. A wrong “direct” table (for example mapping controls charts to `audit_findings.department_id`) breaks queries at runtime.

## Uncovered charts

By default, charts without confirmed mappings are **hidden** in the embed. You can allow them under [Viewer options](/embed/viewer-options)—only when you accept that those tiles are not liquid-scoped.

## Runtime behavior

| Situation                                | Result                                |
| ---------------------------------------- | ------------------------------------- |
| Mandatory tag missing at mint            | Mint fails (`missing_liquid`)         |
| Optional tag missing                     | Session ok; that tag not applied      |
| Confirmed mapping + claim present        | SQL augmented with WHERE / join       |
| No confirmed mappings + uncovered hidden | Chart omitted from embed              |
| No confirmed mappings + uncovered shown  | Chart runs without that liquid filter |

## Related

* [Admin setup](/embed/admin-setup)
* [Developer guide](/embed/developer-guide) — how eng passes `liquid` at mint
* [Partner demo](/embed/partner-demo) — try two department values and compare KPIs
