Reference
Salesforce Deployment Error Library
Look up any Salesforce deployment error to see what it means, why it happens, and the exact fix.
Part of the Salesforce DevOps Guides →45 errors
ALL_OR_NONE_OPERATION_ROLLED_BACKOne bad record in a batch submitted with allOrNone=true rolled back every record in that batch, valid ones included.APEX TEST FAILURESProduction deployments require passing Apex tests and at least 75% code coverage, and Salesforce blocks the release until both are met.CANNOT_CASCADE_PRODUCT_ACTIVEA Product2 record can't be deactivated or deleted because an active PricebookEntry still references it.CANNOT_INSERT_UPDATE_ACTIVATE_ENTITYA validation rule, trigger, or flow in the target org rejected a record insert or update during deployment validation.CANNOT_MODIFY_MANAGED_OBJECTThe deployment tries to change a component that belongs to an installed managed package, which subscriber orgs can't directly modify.CANNOT_UPDATE_CONVERTED_LEADApex or API code tries to update a Lead after it's already been converted, and Salesforce blocks the write.CANT_DISABLE_LAST_ADMINSalesforce blocks deactivating or freezing the last active user with System Administrator access, to prevent locking the org.CIRCULAR_DEPENDENCYTwo or more metadata components reference each other, so Salesforce can't determine a valid deploy order.DELETE_FAILEDA record delete is blocked by a lookup relationship, a trigger, or a pending approval, separate from the metadata-level DEPENDENCY_EXISTS.DEPENDENCY_EXISTSSalesforce won't delete a field, object, or picklist value because another component still references it.DUPLICATE_DEVELOPER_NAMETwo metadata components share the same Developer Name, which Salesforce requires to be unique.DUPLICATE_EXTERNAL_IDAn upsert matches more than one existing record on the same external ID value, so Salesforce can't tell which one to update.DUPLICATE_VALUEA record or metadata component being created already has a matching unique value or Developer Name in the target org.ENTITY_IS_DELETEDThe metadata or record the deployment references has been deleted, or sits in the Recycle Bin, in the target org.FIELD_CUSTOM_VALIDATION_EXCEPTIONA custom validation rule in the target org blocked the record, and the error text is the rule's own message.FIELD_FILTER_VALIDATION_EXCEPTIONA lookup field value doesn't satisfy the lookup filter configured on that field.FIELD_INTEGRITY_EXCEPTIONA value being saved does not match what the field expects, most often a picklist value that does not exist in the target org.INSUFFICIENT_ACCESSThe user or integration making the API call doesn't have the object or field-level permissions the operation requires.INSUFFICIENT_ACCESS_ON_CROSS_REFERENCE_ENTITYThe user running the deployment lacks field or object access to a record referenced during an Apex test or automation.INSUFFICIENT_ACCESS_OR_READONLYThe user running the deployment or data load doesn't have create, edit, or delete permission on the object or field being written to.INVALID_CROSS_REFERENCE_KEYA deployed component references another record or field by an ID or API name that does not exist in the target org.INVALID_EMAIL_ADDRESSA record being saved has a value in an email field that doesn't match Salesforce's email format validation.INVALID_FIELDA SOQL query, formula, or automation references a field API name that doesn't exist on that object in the target org.INVALID_FIELD_FOR_INSERT_UPDATEThe deployment tries to write to a field that is not writable, such as a formula field or one the running user cannot edit.INVALID_ID_FIELDA record ID passed to a lookup or DML operation is malformed, wrong length, or belongs to the wrong object.INVALID_LOGINThe credentials or session a CI pipeline uses to authenticate to Salesforce were rejected before the deployment could even start.INVALID_OR_NULL_FOR_RESTRICTED_PICKLISTA record is being saved with a picklist value, or no value, that isn't in the field's restricted value set in the target org.INVALID_SESSION_IDThe session ID used to authenticate an API call has expired, been revoked, or was never valid.INVALID_TYPEA metadata component, or a type it references, is not valid or enabled in the target org.LIMIT_EXCEEDEDA deployment's Apex tests, or the data load behind it, hit one of Salesforce's governor or org-wide limits.MALFORMED_IDA value passed where Salesforce expects a record ID isn't a valid ID at all, not just the wrong one.MANAGER_NOT_DEFINEDAn approval process or hierarchy-dependent automation fails because the user's Manager field isn't populated.MISSING_FIELDA list view, report, or layout references a field that does not exist on the object in the target org.MIXED_DML_OPERATIONApex tries to modify a setup object, like User or Group, and a non-setup object in the same transaction.NUMBER_OUTSIDE_VALID_RANGEA numeric field value on a record being saved exceeds the digits or decimal places defined for that field.PORTAL_USER_ALREADY_EXISTS_FOR_CONTACTA Contact already has an active Experience Cloud user, so a new portal user can't be created for it.REQUEST_LIMIT_EXCEEDEDThe org has used up its API request allocation, so further calls, including deployment operations, are rejected until it resets.REQUIRED_FIELD_MISSINGA record is missing a value for a field that is marked required in the target org.STANDARD_PRICE_NOT_DEFINEDA record needs a Standard Price Book entry for the product, but none has been created yet.STORAGE_LIMIT_EXCEEDEDThe target org has hit its data or file storage limit, so the deployment cannot insert the records it needs.STRING_TOO_LONGA value written to a text, picklist, or email field exceeds the maximum length defined on that field.TERRITORY2_NOT_ENABLEDA deployment includes Territory2 metadata, but Enterprise Territory Management isn't turned on in the target org.TEXT_AREA_LENGTH_EXCEEDEDA value written to a long text area or rich text field is longer than the maximum length set on that field.UNABLE_TO_LOCK_ROWA record the deployment needs to update is locked by another transaction running at the same time.UNKNOWN_EXCEPTIONSalesforce returned a generic, uncategorized error, usually pointing to an org-side issue rather than the deployment's own metadata.
Start free. No credit card, no install, no commitment.
Set up in under 15 minutes. No DevOps hire needed.
