Skip to main content
There are two ways of understanding user activity:
  1. Usage Analytics dashboards - these are dashboards created by Lightdash which give you an overview of your project’s content and user activity.
  2. Query tags - this is metadata which is added to your data warehouse queries and gives you information about who is querying data and what they are querying.

Usage analytics dashboards

Each project has usage analytics dashboards created by Lightdash giving you an overview of your project’s content and user activity. To see your usage analytics dashboards for a project, just click on the settings icon, project settings, then usage analytics.
Or you can also use our search bar to get direct access to the different analytics dashboards by typing the name of the dashboard (eg: User activity)

User Activity dashboard

This dashboard gives you an overview of the users in your project and the activity of your users.
Here’s an overview of the fields used in the dashboard:
  • Number of users: the total number of users that have access to the project.
  • Number of viewers: the number of users with the viewer role that have access to the project.
  • Number of editors: the number of users with the editor role that have access to the project.
  • Number of admins: the number of users with the admin role that have access to the project.
  • % of weekly querying users: the % of users which have run at least one query in the project in the last 7 days (out of all users in your project). Queries include viewing existing charts and dashboards.
  • Number of weekly querying users: the number of users which have run at least one query in the project in the last 7 days.
  • Weekly average number of queries per user: the rolling 7 day average number of queries that each user is running in your project.
  • Users that have run the most queries in the last 7 days: a list of the users that have run the most queries in your project in the last 7 days.
  • Users that have updated the most charts in the last 7 days: a list of users that have updated (including created) the most charts in the project in the last 7 days.
  • Users that have not run a query in the last 90 days: a list of users that have not run a query in the project in the last 7 days. This includes viewing charts and dashboards.

Extended usage analytics

Self-hosted instances can set the EXTENDED_USAGE_ANALYTICS=true environment variable to add two extra tables to the User Activity dashboard:
  • Dashboard views (top 20): ranks dashboards in the project by total view count.
  • Chart views (top 20): ranks charts in the project by total view count.

Query tags

Query tags are metadata which is added to your data warehouse queries and gives you information about each query executed. The following query tags are sent:
Query TagDetail
organization_uuidLightdash organization unique identifier.
project_uuidLightdash project unique identifier.
user_uuidUser unique identifier.
dashboard_uuidDashboard unique identifier.
chart_uuidChart unique identifier.
explore_nameName of the explore.
query_contextWhich context the query was executed in.

For queries in:
- dashboards use dashboardView
- explore use exploreView
- chart use chartView
- sql chart use sqlChartView
user_attribute_<name>One tag per user attribute value assigned to the querying user. Applies to both regular users and embed viewers, and requires no configuration.

User attribute tags

For every query, Lightdash emits an extra user_attribute_<name> tag for each user attribute value assigned to the user running the query. This makes it possible to attribute warehouse cost, audit access, or debug row-level-security by user attribute directly from your warehouse’s query history.
  • Tags are emitted alongside the standard query tags for both signed-in users and embed viewers (using the attributes passed on the embed token).
  • Values are carried through async query execution end-to-end, so they appear on the actual warehouse job (for example, as labels on a BigQuery job).
  • Keys and values are sanitized to match warehouse tag constraints — lower-cased, restricted to a-z 0-9 _ -, and truncated if too long. Invalid or oversized metadata is sanitized rather than blocking the query.
  • No configuration is required — user attribute tags are emitted automatically wherever query tags are already supported.
For example, a user with the region attribute set to emea and customer_tier set to enterprise will produce these additional tags on every warehouse query they trigger:
user_attribute_region=emea
user_attribute_customer_tier=enterprise
You can then filter your warehouse’s query or job history by these tags (for example, labels.user_attribute_region = "emea" in BigQuery) to break down usage or cost by user attribute. Query tags are stored differently in each data warehouse:
Data WarehouseQuery Tag
BigQueryWrites metadata as labels in your job history.
SnowflakeWrites JSON metadata in the comment column of your query history.
ClickHouseWrites JSON metadata in the comment column of your query log.
TrinoSends metadata as comma-separated key=value pairs in the X-Trino-Client-Tags HTTP header on each submitted query.
RedshiftAppends JSON metadata as a SQL comment in each submitted SQL query.
DatabricksAppends JSON metadata as a SQL comment in each submitted SQL query.
PostgresAppends JSON metadata as a SQL comment in each submitted SQL query.
AthenaAppends JSON metadata as a SQL comment in each submitted SQL query.