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

# Layers

> The top-level storage and permission boundary in the Catalog.

A Layer is the top-level division of the Catalog. It is both a **storage boundary** and a **permission boundary**: tables live inside a Layer, and access granted on a Layer applies to everything created within it. Use Layers to separate processing stages, clients, or other governance boundaries.

Every table in the Catalog belongs to exactly one Layer. Within a Layer you organize tables further with [Folders](/catalog/folders).

<Tip>
  A grant on a Layer also covers Folders, Tables, and Volumes created there later. If two groups of users must not see the same data, separate that data into different Layers and grant each group access only to its own.
</Tip>

## Choose a Layer model

There is no universal Layer structure. Start with the boundary that is hardest to change later—usually data ownership and access—and avoid creating more Layers than your team can maintain.

### Data from your own company

For a workspace that contains internal company data, organize Layers by processing stage:

```text theme={null}
bronze   Data as it arrives from Sources
silver   Cleaned, standardized, validated, and deduplicated data
gold     Business-ready data for analytics, AI agents, and Destinations
```

Use these names consistently so people and AI agents can recognize the stage of each table from its path. Use [Folders](/catalog/folders) inside each Layer to group tables by source or business domain:

```text theme={null}
bronze/
  crm/
  finance/
  marketing/

gold/
  revenue/
  customer_success/
```

### Data from clients

For agencies, consultancies, and other service providers, client isolation is usually more important than processing stage. Start with one Layer per client:

```text theme={null}
client_acme
client_globex
client_northstar
```

Use Folders inside each client Layer to group Sources, working tables, and business-ready outputs. Grant each client or delivery team access only to the relevant Layer.

If a client has a large or complex data operation, you can create stage-specific Layers such as `acme_bronze`, `acme_silver`, and `acme_gold`. Use this structure only when the additional separation provides a clear governance or operational benefit.

### Internal and client data

For a hybrid workspace, combine the two models. Keep one Layer per client and separate Layers for your internal data lifecycle:

```text theme={null}
client_acme
client_globex
internal_bronze
internal_silver
internal_gold
```

This structure prevents your company's operational data from being mixed with client environments while preserving a clear processing flow for internal analytics.

## Related documentation

<CardGroup cols={2}>
  <Card title="Folders" icon="folder" href="/catalog/folders">
    Organize tables inside a Layer.
  </Card>

  <Card title="Tables" icon="table" href="/catalog/tables">
    The datasets that live in a Layer.
  </Card>

  <Card title="Permissions" icon="lock" href="/workspace/permissions">
    Grant Layer access to Members and groups.
  </Card>

  <Card title="Catalog overview" icon="rectangle-history" href="/catalog/overview">
    How data flows through the Catalog.
  </Card>
</CardGroup>
