--- title: Manage fields slug: '1833' canonical_url: https://docs.coveo.com/en/1833/ collection: index-content source_format: adoc --- # Manage fields Once you've [created a source](https://docs.coveo.com/en/3390#add-a-source), you can [review the metadata it has extracted](https://docs.coveo.com/en/m9ti0339/) from your content. You can then add fields to store the relevant metadata in your Coveo index. Indexed metadata can be used to optimize user experience on your search interfaces. _Fields_ are data containers where sources index the [metadata](https://docs.coveo.com/en/218/) extracted from your content. Fields can be used to filter search results, create [facets](https://docs.coveo.com/en/198/), and customize the search experience in various ways. This article explains [how to add fields](#add-a-field) in your Coveo organization and provides details on [field options](#field-options), [origin](#field-origin), and [usage](#use-fields-in-a-search-interface). For details on the process of selecting metadata to index, see [Index metadata](https://docs.coveo.com/en/o3ca0547/). For more information on mapping management, see [Manage mappings](https://docs.coveo.com/en/1640/). You can manage your fields from the [**Fields**](https://platform.cloud.coveo.com/admin/#/orgid/content/fields/) ([platform-ca](https://platform-ca.cloud.coveo.com/admin/#/orgid/content/fields/) | [platform-eu](https://platform-eu.cloud.coveo.com/admin/#/orgid/content/fields/) | [platform-au](https://platform-au.cloud.coveo.com/admin/#/orgid/content/fields/)) page, which lists the fields defined in your [Coveo organization](https://docs.coveo.com/en/185/). This page also displays some options set when creating a field, as well as the field origin, and the number of sources that use each field. ## Add a field Once you've [created a source](https://docs.coveo.com/en/3390#add-a-source), you can add fields to store the [metadata it has extracted](https://docs.coveo.com/en/m9ti0339/). Then, you'll need to add [source mappings](https://docs.coveo.com/en/1640#manage-mappings) to ensure that your fields are [populated with the desired metadata](https://docs.coveo.com/en/2684#mapping) during the indexing process. . Go to the **Add a field** subpage. There are two ways to do so: ** On the [**Fields**](https://platform.cloud.coveo.com/admin/#/orgid/content/fields/) ([platform-ca](https://platform-ca.cloud.coveo.com/admin/#/orgid/content/fields/) | [platform-eu](https://platform-eu.cloud.coveo.com/admin/#/orgid/content/fields/) | [platform-au](https://platform-au.cloud.coveo.com/admin/#/orgid/content/fields/)) page, click **Add field**. Once you've created your field, you'll need to add a [source mapping](https://docs.coveo.com/en/1640#manage-mappings) to ensure that your field is populated with the desired metadata during the indexing process. ** Alternatively, you can add a field from the [**View and map metadata** subpage](https://docs.coveo.com/en/o3ca0547#create-a-mapping-for-metadata-appearing-on-view-and-map-metadata) of a source, while creating a mapping rule. . On the **Add a field** subpage, enter a name for your field. . Select a type for your field and enable options as needed. See [Field options](#field-options) for details. . (Optional) Use the **Project** selector to associate your field with one or more [projects](https://docs.coveo.com/en/n7ef0517/). . Click **Add field**. . [Add a source mapping](https://docs.coveo.com/en/1640#manage-mappings) to ensure that your field is populated with the desired metadata during the indexing process. ## Field options This section details the options displayed on the [**Add a field** subpage](#add-a-field). > **Important** > > In a Coveo organization, fields are _[index](https://docs.coveo.com/en/204/)-wide_ data containers. > In other words, fields may be populated by more than one source. > When you modify a field, all the sources that index metadata in this field will be impacted. > > Moreover, depending on the changes made to the field options, you may need to [rebuild](https://docs.coveo.com/en/2712/) the sources that use the edited field for your changes to be effective. > Check the details of each option to see if a rebuild is required. > You can launch source rebuilds on the [**Sources**](https://platform.cloud.coveo.com/admin/#/orgid/content/sources/) ([platform-ca](https://platform-ca.cloud.coveo.com/admin/#/orgid/content/sources/) | [platform-eu](https://platform-eu.cloud.coveo.com/admin/#/orgid/content/sources/) | [platform-au](https://platform-au.cloud.coveo.com/admin/#/orgid/content/sources/)) page. ![Coveo field options](https://docs.coveo.com/en/assets/images/index-content/field-options.png) [cols="1,5"] |=== |1 |[Field type](#field-type) |2 |[Facet and Multi-value facet](#facet-and-multi-value-facet) |3 |[Sortable](#sortable) |4 |[Search operator and Displayable in results](#search-operator-and-displayable-in-results) |5 |[Free text search](#free-text-search) |6 |[Ranking](#ranking) |7 |[Stemming](#stemming) |8 |[Use cache for sort](#use-cache-for-sort) |9 |[Use cache for computed fields](#use-cache-for-computed-fields) |10 |[Use cache for nested queries](#use-cache-for-nested-queries) |11 |[Use cache for numeric queries](#use-cache-for-numeric-queries) |=== ### Field type Select the type of data that will be indexed in this field. For a field where you'll index Boolean metadata, select **String**. The possible field types are the following: [%header,cols="~,~,~,~"] |=== |Type |Field name example |Value example |Value for the [Fields API](https://docs.coveo.com/en/8/api-reference/field-api#tag/Fields/operation/createField) |String a|`department` `published` a|`Sales` `true` |`STRING` |Integer 32 |`year` |`2025` |`LONG` |Integer 64 |`timesinceepoch` |`1517341713150` |`LONG_64` |Decimal a|`weight` `length` a|`5.25` `3` |`DOUBLE` |Date |`date` |`2025-03-27` |`DATE` |[Vector](https://docs.coveo.com/en/l9gg3565/) |`personalizationdata` |`[0.235, 0.1234, 0.789, 0.765]` |`VECTOR` |=== Integer 32, Integer 64, and Decimal fields are sometimes called _numeric fields_. The following aren't field types: **Dictionary fields**
Details _Dictionary fields_ are string or numeric fields that can contain multiple key-value pairs. The dictionary capability can be enabled when creating or updating a field via the Field API. See [Dictionary fields](https://docs.coveo.com/en/2036/) for more information.
**Dynamic fields**
Details _Dynamic fields_ are temporary fields created by a [query function](https://docs.coveo.com/en/1451/) to store the value resulting from the calculation. For example, [geolocalized search results](https://docs.coveo.com/en/433/) and [discounted prices](https://docs.coveo.com/en/1451#discount) are operations that require dynamic fields. Since dynamic fields exist only for the duration of the query execution, they're not listed on the [**Fields**](https://platform.cloud.coveo.com/admin/#/orgid/content/fields/) ([platform-ca](https://platform-ca.cloud.coveo.com/admin/#/orgid/content/fields/) | [platform-eu](https://platform-eu.cloud.coveo.com/admin/#/orgid/content/fields/) | [platform-au](https://platform-au.cloud.coveo.com/admin/#/orgid/content/fields/)) page, and _dynamic_ isn't a proper field type.
### Facet and Multi-value facet The **Facet** and **Multi-value facet** field options allow you to add a [facet](https://docs.coveo.com/en/198/) based on this field in your [search interface](https://docs.coveo.com/en/2741/). Search interface users will then be able to use this facet to filter their search results by selecting field values. These options are mutually exclusive. If your field is a [string field](#field-type), you can select either option, or none. With a field of another type, **Facet** is mandatory and you don't have any decision to make. The main difference between **Facet** and **Multi-value facet** is how Coveo interprets the metadata indexed in this field. When you select the **Facet** option, Coveo interprets the metadata as a single value. Conversely, when you select the **Multi-value facet** option, Coveo interprets the metadata as multiple values separated by a semicolon (`;`). **Example** ![Author facet | Coveo](https://docs.coveo.com/en/assets/images/index-content/author-facet.png) You index text documents that may have been edited by several individuals. This means that the author metadata may look as follows: `John Smith;Mary Davis;Barbara Allen`. In this case, you should enable the **Multi-value facet** option for the `author` field. This ensures that each author name is considered as a separate value in the facet. In your search interface, when an end user selects names in the Author facet to refine their search results, the items with multiple authors are visible as long as one of their names is selected in the facet. Conversely, if you were to enable the **Facet** option instead, Coveo would interpret the indexed metadata as a single value. Therefore, your facet values would look like this: `John Smith;Mary Davis;Barbara Allen`. Selecting one of these values would filter out any item that doesn't have exactly this set of values. Another difference between the two options is that fields with the **Facet** option enabled can be used to identify [items](https://docs.coveo.com/en/210/) to promote with a [featured result rule](https://docs.coveo.com/en/3376/). When you select either **Facet** or **Multi-value facet**, you have the option to enable the **Facet Generator** option. This option lets the [Facet Generator](https://docs.coveo.com/en/n9sd0159/) provide facets based on the input query and the content of your index. Optionally, enter a name to display when a facet based on this field appears in your search interface. For example, if your field name is `author`, you can enter _Author_ as the display name. If you don't enter a name, the facet will display the field name. [cols="~h,~"] |=== |Impact when enabled |Increases the time it takes to index items that populate this field and requires additional index space and memory; enable this option only when necessary. If most indexed items have a different value for your field, loading them in a facet will also increase search response time; enable the [**Use cache for nested queries** option](#use-cache-for-nested-queries) to improve performance. |After changing these options |No [rebuild](https://docs.coveo.com/en/2712/) required. However, you may observe a delay before your change becomes effective. |=== ### Sortable The **Sortable** field option allows you to add a _Sort by_ component based on this field to your [search interface](https://docs.coveo.com/en/2741/). Search interface users will then be able to use this component to sort their search results based on this field. ![Using the sort component | Coveo](https://docs.coveo.com/en/assets/images/index-content/sortable.gif) This option is mandatory for [numeric and date fields](#field-type), and irrelevant for vector fields. So, you don't have any decision to make in these cases. If you expect search interface users to frequently sort their search results based on a certain field, you should enable the [**Use cache for sort** option](#use-cache-for-sort) for this field. [cols="~h,~"] |=== |Impact when enabled |Increases the time it takes to index items that populate this field, and requires additional index space and memory. Enable this option only when necessary. |After changing this option |No [rebuild](https://docs.coveo.com/en/2712/) required. However, you may observe a delay before your change becomes effective. |=== ### Search operator and Displayable in results At least one of these field options must be enabled. When **Search operator** is enabled, search interface users can [perform queries on the field](https://docs.coveo.com/en/1552#field-queries). For example, they could type `@author=Poe` or `@author=="Edgar Allan Poe"` in the search box to find books whose author is Edgar Allan Poe. > **Tip** > > Avoid enabling **Search operator** for [dictionary fields](https://docs.coveo.com/en/2036/) containing multiple key-value pairs or complex JSON objects, as this can significantly degrade indexing performance. When **Displayable in results** is enabled, the field can be used in the result templates of your search interfaces. For example, this search result displays the values of the `division`, `title`, and `location` fields: ![Coveo search result](https://docs.coveo.com/en/assets/images/index-content/displayable-results.png) [cols="~h,~"] |=== |Impact when enabled |No significant impact on search response time or index size. |After changing these options |[Rebuild](https://docs.coveo.com/en/2039/) all the associated sources to make your change effective. |=== ### Free text search Typically, when a search interface user enters keywords in the search box, items whose body contains these keywords are returned in the search results. When you enable the **Free text search** option for a field, the field values are also considered. > **Tip** > > Avoid enabling this option for [dictionary fields](https://docs.coveo.com/en/2036/) if the values must remain confidential or internal. **Example** You own a bookstore and you index the books you have in your inventory. The body of a book item is its _blurb_, that is, the description that appears on the back cover. The `author` field contains the name of the author of the book. Let's say a customer types _Poe_ in your search interface. If the **Free text search** option is disabled for the `author` field, the search results will only include books whose blurb include _Poe_. If the **Free text search** option is enabled for the `author` field, the search results will include books by Edgar Allan Poe, as well as books with _Poe_ in the blurb. If **Free text search** is disabled and **Search operator** is enabled, the field values are only considered in queries that explicitly reference the field, such as `@author=Poe`. [cols="~h,~"] |=== |Impact when enabled |If your fields contain a lot of text, enabling this option could have an impact on performance. |After changing this option |[Rebuild](https://docs.coveo.com/en/2039/) all the associated sources to make your change effective. |=== ### Ranking Enable the **Ranking** option when you want results to be ranked higher in the search results if the query explicitly references the field, and the value matches what's present on the result. **Example** You own a bookstore and you index the books you have in your inventory. Let's say a customer types _Poe_ in your search interface. If the **Ranking** option is enabled for the `author` field, and the disjunction query expression includes a field expression `@author=Poe`, the books whose author is Edgar Allan Poe will be ranked higher in the search results. [cols="~h,~"] |=== |Impact when enabled |Significant impact on query performance; enable this option only when necessary. |=== ### Stemming Enable the **Stemming** option to allow [stemming](https://docs.coveo.com/en/1576/) on [field queries](https://docs.coveo.com/en/1552#field-queries). **Example** The words _search_, _searching_, and _searched_ share the same root or stem: `search-`. Let's say you enable the **Stemming** option for the `title` field. When a user queries _searching_ in item titles (`@title=searching`), Coveo returns items with a title containing the words _searching_, _search_, _searches_, and _searched_. [cols="~h,~"] |=== |Impact when enabled |Significant impact on query performance; enable this option only when necessary. |After changing this option |[Rebuild](https://docs.coveo.com/en/2039/) all the associated sources to make your change effective. |=== ### Use cache for sort The **Use cache for sort** option makes the search result sorting process faster by keeping the field values in memory. It's available when you've enabled the [**Sortable** option](#sortable) for a field. If you expect search page users to frequently use the sort component based on this field, you should enable the **Use cache for sort** option. [cols="~h,~"] |=== |Impact when enabled |Keeping a sorting field in memory improves the performance of the sort component. |After changing this option |No [rebuild](https://docs.coveo.com/en/2712/) required. However, you may observe a delay before your change becomes effective. |=== ### Use cache for computed fields Enable the **Use cache for computed fields** option when you want to keep data in memory for computed fields. It should be enabled when you have a [query function](https://docs.coveo.com/en/1451/) expression that references a field. For example, you use a query function to compute the file size in kilobytes for each item at query time and store the results in a dynamically generated field called `sizekb`. This query function is `function:"@size/1024" : fieldName:"@sizekb"`. It requires the `sizekb` field to use the cache. If the option isn't enabled, queries related to these fields may take over a second to return results, depending on your number of items. [cols="~h,~"] |=== |After changing this option |[Rebuild](https://docs.coveo.com/en/2039/) all the associated sources to make your change effective. |=== ### Use cache for nested queries Cardinality is the number of different values a field has. Cardinality has a great impact on nested query performance, especially with [string fields](https://docs.coveo.com/en/1833#field-type), as Coveo must process many values. Enable the **Use cache for nested queries** option when using high-cardinality facets, especially if they contain strings, or when you plan on making [nested queries](https://docs.coveo.com/en/1700/) using this field. Coveo will keep in memory the values of this field for faster processing. [cols="~h,~"] |=== |Impact when enabled |Improves performance of high-cardinality facets and nested queries. Also improves the performance of queries containing [advanced search operators](https://docs.coveo.com/en/1897/) and of [facet value suggestions](https://docs.coveo.com/en/340#providing-facet-value-suggestions). |After changing this option |No [rebuild](https://docs.coveo.com/en/2712/) required. However, you may observe a delay before your change becomes effective. |=== ### Use cache for numeric queries Enable the **Use cache for numeric queries** option when you want to keep the proper information in memory to execute operations on numeric or date fields. Enabling this option also allows you to use numeric fields for [range facets](https://docs.coveo.com/en/1554#facetrange), specify the number of ranges, and let the Coveo index establish the ranges. [cols="~h,~"] |=== |Impact when enabled a|* Improves performance when executing queries on numeric fields, especially queries that cover the entire range. * This option makes the calculations related to numeric range facets faster, for example when generating the interval values and when dynamically updating these values based on the content returned following a user query. |After changing this option |No [rebuild](https://docs.coveo.com/en/2712/) required. However, you may observe a delay before your change becomes effective. |=== ## Field origin On the [**Fields**](https://platform.cloud.coveo.com/admin/#/orgid/content/fields/) ([platform-ca](https://platform-ca.cloud.coveo.com/admin/#/orgid/content/fields/) | [platform-eu](https://platform-eu.cloud.coveo.com/admin/#/orgid/content/fields/) | [platform-au](https://platform-au.cloud.coveo.com/admin/#/orgid/content/fields/)) page, the **Origin** column indicates the field provenance, and whether it applies to all sources or only to specific sources. ![Coveo field origins](https://docs.coveo.com/en/assets/images/index-content/field-origin.png) **Default** fields, also called _system fields_, are required by the Coveo index and apply to all sources. They're automatically created and, for the most part, automatically filled by the [Coveo Platform](https://docs.coveo.com/en/186/). The default fields are: `author`, `clickableuri`, `collection`, `concepts`, `date`, `fileextension`, `filename`, `filetype`, `indexeddate`, `isreference`, `language`, `metadatasampling`, `month`, `ocrpages`, `openwithquickview`, `orderingid`, `parents`, `permanentid`, `primaryid`, `printableuri`, `rowid`, `size`, `source`, `title`, `transactionid`, `uri`, `urihash`, `wordcount`, `year`. When editing **Default** fields, you can't change the following options: [Search operator](#search-operator-and-displayable-in-results), [Displayable in results](#search-operator-and-displayable-in-results), [Free text search](#free-text-search), [Ranking](#ranking), and [Stemming](#stemming). If your organization has default fields with a `sys` prefix, such as `sysdate`, see [About the SYS field name prefix](https://docs.coveo.com/en/1567/) for more information. **Other** fields are added to store specific metadata. They can be either: * [Added by a Coveo user](https://docs.coveo.com/en/1833#add-a-field). These fields are sometimes called _custom fields_. * Automatically added when a source is created. These fields are sometimes called _standard source fields_. They're often source-specific and may have a prefix to indicate the type of source to which they're associated. For example, fields exclusive to RSS sources have the prefix `rss`. `rssfirstlink` is a field that's automatically created when you create an RSS source, and will only be populated by RSS sources. However, RSS sources also fill the `objecttype` field, which is used by Microsoft Dynamics 365 sources as well. **Standard source field prefixes**
Details [%header,cols="~,~,~"] |=== |source |Standard source field prefix |Example |[Amazon S3](https://docs.coveo.com/en/1616/) |`s3` |`s3bucketname` |[Box Business](https://docs.coveo.com/en/1594/) |`box` |`boxdocumenttype` |[Catalog](https://docs.coveo.com/en/n8of0593/) |`ec_` |`ec_brand` |[Confluence Cloud](https://docs.coveo.com/en/1530/), [Confluence Data Center](https://docs.coveo.com/en/1822/) |`conf` |`confcreatedbyusername` |[Database](https://docs.coveo.com/en/1885/) |None (user-defined field names) |N/A |[Dropbox Business](https://docs.coveo.com/en/1636/) |`db` |`dbitemcreatedbyname` |[File System](https://docs.coveo.com/en/1766/) |None |N/A |[Google Drive](https://docs.coveo.com/en/1531/) |`gd` |`gdcommentauthorname` |[GraphQL API](https://docs.coveo.com/en/n6gh2329/) |None (user-defined field names) |N/A |[Jira Software Cloud](https://docs.coveo.com/en/1655/), [Jira Software Data Center](https://docs.coveo.com/en/1772/) |`ji` and `jifields` |`jifieldsupdated` |[Khoros Community](https://docs.coveo.com/en/1691/) |`li` |`litopicurl` |[Microsoft Dynamics 365](https://docs.coveo.com/en/1915/) |`dy` |`dyaccountid` |[Push](https://docs.coveo.com/en/1546/) |None |N/A |[REST API](https://docs.coveo.com/en/1896/) |None (user-defined field names) |N/A |[RSS](https://docs.coveo.com/en/1647/) |`rss` |`rssfirstlink` |[Salesforce](https://docs.coveo.com/en/1052/) |`sf` |`sfaccountname` |[SAP](https://docs.coveo.com/en/9618/) |None |N/A |[ServiceNow](https://docs.coveo.com/en/2107/) |`sn` |`snaccount` |[SharePoint Online](https://docs.coveo.com/en/1739/) |`sp` and `spo` |`spocreateddate` |[SharePoint Server](https://docs.coveo.com/en/2061/) |`sp` |`spsitename` |[Sitecore](https://docs.coveo.com/en/1579/) |None |N/A |[Sitemap](https://docs.coveo.com/en/1967/) |`sitemap` |`sitemaplastmodified` |[Slack](https://docs.coveo.com/en/l8490367/) |None |N/A |[Web](https://docs.coveo.com/en/malf0160/) |None |N/A |[YouTube](https://docs.coveo.com/en/1637/) |`yt` |`ytviewcount` |[Zendesk](https://docs.coveo.com/en/1880/) |`zendesk` |`zendeskassigneename` |===
## Use fields in a search interface You can use fields in your search interface to filter search results, create [facets](https://docs.coveo.com/en/198/), and customize the search experience in various ways. These customizations include: * Adding facets to a search interface to let users filter their search results by selecting field values. Each [facet](https://docs.coveo.com/en/198/) represents a field in your index and is populated with values found in your content metadata. See [Facet and Multi-value facet](#facet-and-multi-value-facet) for more information. * Displaying certain field values in search results. This provides additional information about the item to your search interface users. See [Displayable in results](#search-operator-and-displayable-in-results) for more information. * Offering the option to sort search results based on the value of a certain field. See [Sortable](#sortable) for more information. * Implementing result folding. This displays some search results as child items of other search results. See [About result folding](https://docs.coveo.com/en/1884/) and [Folding results](https://docs.coveo.com/en/428/) for details. * Allowing users to perform [advanced queries on fields](https://docs.coveo.com/en/1897/). This is useful when you know the name of a field and want to retrieve items for which the value of this field matches your entry. See [Search operator](#search-operator-and-displayable-in-results) for details on this option. ## Review the activity regarding fields As part of your duties, you may need to review [activities](https://docs.coveo.com/en/173/) related to fields for investigation or troubleshooting purposes. To do so, in the upper-right corner of the [**Fields**](https://platform.cloud.coveo.com/admin/#/orgid/content/fields/) ([platform-ca](https://platform-ca.cloud.coveo.com/admin/#/orgid/content/fields/) | [platform-eu](https://platform-eu.cloud.coveo.com/admin/#/orgid/content/fields/) | [platform-au](https://platform-au.cloud.coveo.com/admin/#/orgid/content/fields/)) page, click [clock]. ## Required privileges The following table indicates the privileges required to view or edit elements of the [**Fields**](https://platform.cloud.coveo.com/admin/#/orgid/content/fields/) ([platform-ca](https://platform-ca.cloud.coveo.com/admin/#/orgid/content/fields/) | [platform-eu](https://platform-eu.cloud.coveo.com/admin/#/orgid/content/fields/) | [platform-au](https://platform-au.cloud.coveo.com/admin/#/orgid/content/fields/)) page and associated panels. See [Manage privileges](https://docs.coveo.com/en/3151/) and [Privilege reference](https://docs.coveo.com/en/1707/) for details. [cols="~,~,~", options="header"] |=== |Action |Service - Domain |Required access level |View fields |Content - Fields Content - Sources Organization - Activities Organization - Organization |View .2+|Edit fields |Organization - Activities Organization - Organization |View |Content - Fields Content - Sources |Edit |=== > **Important** > > A member with the **View** access level on the **Activities** domain can access the [Activity Browser](https://docs.coveo.com/en/1969/). > This member can therefore see all activities taking place in the organization, including those from Coveo Administration Console pages that they can't access.