---
schema_version: "1"
id: 6af8308506283ded0979a7d812fcf92e7363513bb3df60ce3eb93767634657a7
title: Primary Keys in Salesforce Spiff
collection: admin
version: current
locale: en-us
portal_url: https://docs.salesforce.com/admin/current/en-us/sales/264-0-0/spiff_primary_key.md
canonical_url: https://help.salesforce.com/s/articleView?id=sales.spiff_primary_key.htm&release=264.0.0&type=5
source_site: help.salesforce.com
content_type: documentation
content_hash: 52c4464bced3a36ae949eb14e09d5fb448322b4bb6390364f35adaa26c390d4e
description: A primary key helps Salesforce Spiff differentiate records based on a unique ID and determine whether to add new rows or update existing rows on new imports. This value must be unique for each record.
products:
  - Sales Cloud
  - Sales Enablement
release: "264"
---
# Primary Keys in Salesforce Spiff

A primary key helps Salesforce Spiff differentiate records based on a unique ID and determine whether to add new rows or update existing rows on new imports. This value must be unique for each record.

### Required Editions

<table class="slds-table slds-table_bordered slds-max-medium-table_stacked slds-m-bottom_small edition"><colgroup><col></colgroup><tbody><tr class=""><td class="slds-cell-wrap" style="vertical-align:top;">Available in: both Salesforce Classic (not available in all orgs) and Lightning Experience</td></tr><tr class=""><td class="slds-cell-wrap" style="vertical-align:top;">Available in: <strong>Enterprise</strong>, <strong>Unlimited</strong>, and <strong>Developer</strong> Editions</td></tr><tr class=""><td class="slds-cell-wrap" style="vertical-align:top;">Available for an additional cost in: <strong>Professional</strong> Edition with Web Services API Enabled</td></tr></tbody></table>

The primary key for an object is locked after the first upload when the key is selected. Locking the primary key ensures that the same field is used for future imports of updated data.

![Primary key identification](https://sf-zdocs-cdn-prod.zoominsoftware.com/tdta-sales-sales_performance_management-264-0-0-production-enus/b1f2feb4-26b8-444f-97f7-be2349869d93/sales_performance_management/images/spiff/spiff_data_import_primary_key.png)

The primary key field can't contain special characters or spaces. The most common name used for a primary key field is external\_id, and this name is required for these objects.

- accounts
- assets
- conversion\_rates
- deals
- deal\_splits
- deal\_split\_types
- deal\_team\_members
- events
- invoices
- line\_items
- payers
- payments
- products
- quotas
- quota\_types
- tasks
- users

For other objects, you can use any name, such as PrimaryKey or UniqueIdentifier. If an object has already been uploaded and a primary key has been selected, use the same name.

The value of each record's primary key must be unique. If you don't already have a field that’s unique to each record, create alphanumeric entries that you can easily add. Or, concatenate other field values to form a unique value, which provides a more human-readable way to find specific records.

If you want to upload additional data to an object but you aren't sure what the primary key field is, go to Data Sources, click on **Imported Tables** in Data Imports. Hover over the three dots next to the object and export a template of fields.

#### See Also

- [Upload Data in the Data Sources Page in Salesforce Spiff](https://help.salesforce.com/s/articleView?id=sales.spiff_upload.htm&release=264.0.0&type=5 "To manually upload records into Salesforce Spiff, import .xlsx or .csv files that represent users, deals, accounts, or other objects.")