Stay organized with collections
Save and categorize content based on your preferences.
Introduction to labels
To help organize your BigQuery resources, you can add labels to
your datasets, tables, reservations, and views. Labels are key-value pairs that you can attach
to a resource. When you create BigQuery resources, labels are
optional.
After labeling your resources, you can search for them based on label values.
For example, you can use labels to group datasets by purpose, environment,
department, and so on.
What are labels?
A label is a key-value pair that you can assign to Google Cloud BigQuery resources.
They help you organize these resources and manage your costs at scale, with the
granularity you need. You can attach a label to each resource, then filter the
resources based on their labels. Information about labels is forwarded to the billing system that
lets you break down your billed charges by label. With built-in billing reports,
you can filter and group costs by resource labels. You can also use labels to
query billing data exports.
Requirements for labels
The labels applied to a resource must meet the following
requirements:
Each resource can have up to 64 labels.
Each label must be a key-value pair.
Keys have a minimum length of 1 character and a maximum length of 63
characters, and cannot be empty. Values can be empty, and have a maximum length
of 63 characters.
Keys and values can contain only lowercase letters, numeric characters,
underscores, and dashes. All characters must use UTF-8 encoding, and
international characters are allowed. Keys must start with a lowercase letter or
international character.
The key portion of a label must be unique within a single resource.
However, you can use the same key with multiple resources.
These limits apply to the key and value for each label, and to the
individual Google Cloud resources that have labels. There
is no limit on how many labels you can apply across all resources
within a project.
Common uses of labels
Here are some common use cases for labels:
Team or cost center labels: Add labels based on team or
cost center to distinguish BigQuery resources owned by different
teams (for example, team:research and team:analytics). You can use this
type of label for cost accounting or budgeting.
Component labels: For example, component:redis,
component:frontend, component:ingest, and component:dashboard.
Environment or stage labels: For example,
environment:production and environment:test.
State labels: For example, state:active,
state:readytodelete, and state:archive.
Ownership labels: Used to identify the teams that are
responsible for operations, for example: team:shopping-cart.
We don't recommend creating large numbers of unique labels, such as
for timestamps or individual values for every API call.
The problem with this approach is that when the values change frequently or with
keys that clutter the catalog, this makes it difficult to effectively filter and
report on resources.
Labels and tags
Labels can be used as queryable annotations for resources, but can't be used
to set conditions on policies. Tags provide a way to conditionally allow or
deny policies based on whether a resource has a specific tag, by providing fine-grained
control over policies. For more information, see the
Tags overview.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Hard to understand","hardToUnderstand","thumb-down"],["Incorrect information or sample code","incorrectInformationOrSampleCode","thumb-down"],["Missing the information/samples I need","missingTheInformationSamplesINeed","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-08-25 UTC."],[[["\u003cp\u003eLabels are key-value pairs that can be added to BigQuery datasets, tables, and views to help organize and manage resources.\u003c/p\u003e\n"],["\u003cp\u003eLabels enable users to filter and group resources by various criteria, such as team, environment, or cost center, and can be used to break down billed charges.\u003c/p\u003e\n"],["\u003cp\u003eEach resource can have up to 64 labels, with key and value constraints on length and characters, and keys must be unique within a resource.\u003c/p\u003e\n"],["\u003cp\u003eCommon uses for labels include identifying teams, components, environments, states, and ownership, while it's advised to avoid using them for sensitive data or large numbers of unique labels.\u003c/p\u003e\n"],["\u003cp\u003eWhile labels are used for organizing and querying, tags provide a means for conditionally allowing or denying policies based on if a resource has a specific tag.\u003c/p\u003e\n"]]],[],null,["# Introduction to labels\n======================\n\nTo help organize your BigQuery resources, you can add labels to\nyour datasets, tables, reservations, and views. Labels are key-value pairs that you can attach\nto a resource. When you create BigQuery resources, labels are\noptional.\n\nAfter labeling your resources, you can search for them based on label values.\nFor example, you can use labels to group datasets by purpose, environment,\ndepartment, and so on.\n\nWhat are labels?\n----------------\n\nA label is a key-value pair that you can assign to Google Cloud BigQuery resources.\nThey help you organize these resources and manage your costs at scale, with the\ngranularity you need. You can attach a label to each resource, then filter the\nresources based on their labels. Information about labels is forwarded to the billing system that\nlets you break down your billed charges by label. With built-in [billing reports](/billing/docs/how-to/reports),\nyou can filter and group costs by resource labels. You can also use labels to\nquery [billing data exports](/billing/docs/how-to/bq-examples).\n\nRequirements for labels\n-----------------------\n\nThe labels applied to a resource must meet the following\nrequirements:\n\n- Each resource can have up to 64 labels.\n- Each label must be a key-value pair.\n- Keys have a minimum length of 1 character and a maximum length of 63 characters, and cannot be empty. Values can be empty, and have a maximum length of 63 characters.\n- Keys and values can contain only lowercase letters, numeric characters, underscores, and dashes. All characters must use UTF-8 encoding, and international characters are allowed. Keys must start with a lowercase letter or international character.\n- The key portion of a label must be unique within a single resource. However, you can use the same key with multiple resources.\n\nThese limits apply to the key and value for each label, and to the\nindividual Google Cloud resources that have labels. There\nis no limit on how many labels you can apply across all resources\nwithin a project.\n\nCommon uses of labels\n---------------------\n\nHere are some common use cases for labels:\n\n- **Team or cost center labels** : Add labels based on team or\n cost center to distinguish BigQuery resources owned by different\n teams (for example, `team:research` and `team:analytics`). You can use this\n type of label for cost accounting or budgeting.\n\n- **Component labels** : For example, `component:redis`,\n `component:frontend`, `component:ingest`, and `component:dashboard`.\n\n- **Environment or stage labels** : For example,\n `environment:production` and `environment:test`.\n\n- **State labels** : For example, `state:active`,\n `state:readytodelete`, and `state:archive`.\n\n- **Ownership labels** : Used to identify the teams that are\n responsible for operations, for example: `team:shopping-cart`.\n\n\n| **Note:** Don't include sensitive information in labels, including personally identifiable information, such as an individual's name or title. Labels are not designed to handle sensitive information.\n\nWe don't recommend creating large numbers of unique labels, such as\nfor timestamps or individual values for every API call.\nThe problem with this approach is that when the values change frequently or with\nkeys that clutter the catalog, this makes it difficult to effectively filter and\nreport on resources.\n\nLabels and tags\n---------------\n\nLabels can be used as queryable annotations for resources, but can't be used\nto set conditions on policies. Tags provide a way to conditionally allow or\ndeny policies based on whether a resource has a specific tag, by providing fine-grained\ncontrol over policies. For more information, see the\n[Tags overview](/resource-manager/docs/tags/tags-overview).\n\nWhat's next\n-----------\n\n- Learn how to [add labels](/bigquery/docs/adding-labels) to BigQuery resources.\n- Learn how to [view labels](/bigquery/docs/viewing-labels) on BigQuery resources.\n- Learn how to [update labels](/bigquery/docs/updating-labels) on BigQuery resources.\n- Learn how to [filter resources using labels](/bigquery/docs/filtering-labels).\n- Learn how to [delete labels](/bigquery/docs/deleting-labels) on BigQuery resources.\n- Read about [Using labels](/resource-manager/docs/using-labels) in the Resource Manager documentation."]]