Custom Columns
With Custom Columns, you can define new columns on any asset table and populate them via SQL expressions (e.g., extracting tags or fields).
Once added, these columns become:
- Filterable in the UI
- Searchable via SQL
- Queryable in reports and dashboards
Creating a Custom Column
- Navigate to Organization settings → Custom columns.
- Click Add custom column.
- Fill in the form:
- Column label — the display name shown in the UI (e.g., “Team”)
- Column name — the backend identifier in
snake_case(e.g.,team) - Description (optional) — purpose of the column
- Value expression — a ClickHouse SQL expression to extract or transform the value (e.g.,
tags['team'])
- Click Create custom column.
Once saved, the column appears in the Asset Inventory and can be filtered and searched like native fields.
Supported SQL Expressions
You can use any valid ClickHouse SQL expression when the value type is expression. Here are some common examples:
Tag Extraction
tags['team']
tags['cost_center']JSON Parsing
JSONExtractString(tags['metadata'], 'department')
JSONExtract(tags['finance'], 'budget', 'Float64')Normalization / Cleanup
lower(tags['env']) -- normalize prod, Prod, PROD
multiIf(
tags['env'] = 'production', 'prod',
tags['env'] = 'staging', 'stage',
tags['env']
)Conditional Defaults
COALESCE(NULLIF(tags['team'],''),'unknown')Lifecycle Metadata
parseDateTimeBestEffort(tags['deletion_date'])
toDate(now() + INTERVAL 30 DAY)Example Use Cases
| Column | Type | Expression / Source | Description |
|---|---|---|---|
| team | String | tags[‘team’] | Surface team ownership |
normalized_env | String | lower(tags[‘env’]) | Normalize inconsistent tag values |
scheduled_delete | Date | parseDateTimeBestEffort(tags[‘deletion’]) | Track lifecycle cleanup dates |
Query Examples
SELECT account, region, name, tags, team FROM cloud_assets
WHERE team == ''Programmatic access
Custom columns can be created and managed via the Platform API, useful for IaC-style column management. See the Platform API Reference (custom-columns section) for endpoint details.
Next Steps
- Asset Inventory - Use custom columns in the asset inventory
- Search & Filter Query Syntax - Search and filter by custom column values
- SQL Console - Query custom column data with SQL
Last updated on