App Deployment in Salesforce refers to the process of moving customizations, configurations, and metadata from one Salesforce environment to another, such as from a development environment (sandbox) to a live production environment. Salesforce provides various tools and processes to facilitate this.
Developer Sandbox:
Partial Copy Sandbox:
Full Copy Sandbox:
sfdx force:source:deploy to deploy metadata from a local project to Salesforce.| Tool | Best For | Skill Level |
|---|---|---|
| Salesforce CLI | Modern, agile deployments | Intermediate to Expert |
| Ant Migration | Large-scale legacy deployments | Intermediate to Expert |
Unlocked Packages:
Managed Packages:
| Tool | Purpose | Use Case |
|---|---|---|
| Change Sets | Migrating metadata between environments | Deploy updated page layouts and automation from sandbox to production. |
| Developer Sandbox | Lightweight development and testing | Create new custom objects or fields. |
| Partial Copy Sandbox | Testing with a sample of production data | Test a new approval process with real sample data. |
| Full Copy Sandbox | Comprehensive testing with full production data | Test system performance before a major release. |
| Salesforce CLI | Command-line metadata management | Automate deployment for version-controlled projects. |
| Ant Migration Tool | Large-scale automated deployments | Deploy metadata for large enterprise projects. |
| Unlocked Packages | Modular internal app deployment | Version control for internal custom apps. |
| Managed Packages | Distribute apps via AppExchange | Publish a custom app for third-party use. |
Start with Change Sets:
Explore Sandboxes:
Try Salesforce CLI:
Learn Packaging Basics:
App Deployment in Salesforce refers to the process of moving customizations, configurations, and metadata between different environments.
Change Sets are a point-and-click deployment tool used to migrate metadata between related Salesforce environments (e.g., Sandbox to Production). While easy to use, they have some limitations.
Sandboxes are isolated Salesforce environments used for development, testing, and training without affecting production.
| Sandbox Type | Refresh Interval | Contains Production Data? |
|---|---|---|
| Developer Sandbox | Daily | No |
| Partial Copy Sandbox | Every 5 days | Yes (Subset of data) |
| Full Copy Sandbox | Every 29 days | Yes (All production data) |
Salesforce CLI (sfdx) is a powerful command-line tool that enables automated deployments, source tracking, and metadata retrieval.
| Command | Purpose |
|---|---|
sfdx force:source:deploy -p force-app |
Deploy metadata to a Salesforce org. |
sfdx force:source:retrieve -m CustomObject |
Retrieve metadata (e.g., custom objects) from a Salesforce org. |
sfdx force:org:create -s -f config/project-scratch-def.json |
Create a Scratch Org for development/testing. |
The Ant Migration Tool is a Java-based tool used for retrieving and deploying metadata using XML configuration files.
| Feature | Ant Migration Tool | Salesforce CLI |
|---|---|---|
| Deployment Method | Uses XML package.xml | Uses JSON and direct commands |
| Automation Support | Requires manual scripting | Supports CI/CD pipelines |
| Target Audience | Traditional IT administrators | Developers & DevOps teams |
Salesforce offers different package types to modularize and distribute applications.
| Package Type | Best Use Case | Modifiable After Deployment? | Version Control? |
|---|---|---|---|
| Unlocked Package | Internal modular deployments | Yes | Yes |
| Managed Package | AppExchange applications | No | Yes |
| Unmanaged Package | One-time deployments | Yes | No |
The additional topics covered in this section refine our understanding of App Deployment:
What is the first thing to check when a change set deployment fails?
Check dependencies and target-org readiness first. Many deployment failures happen because the change set does not include required dependent components or the target org is missing prerequisites.
Salesforce’s own change set guidance repeatedly stresses dependent components, and community deployment problems match that pattern closely. A page, flow, field, or managed-package reference may work in the source org because everything already exists there, but fail during validation in the target org when one dependency is missing or incompatible. That is why exam questions often reward the answer that includes reviewing dependencies before deployment instead of jumping straight to troubleshooting the single visible error. In practical terms, validate what the component references, confirm those parts exist in the target org, and include anything missing. A common mistake is assuming the failing item is self-contained. In Salesforce metadata, it often is not.
Demand Score: 78
Exam Relevance Score: 91
When are change sets appropriate, and what is their main limitation?
Change sets are appropriate for moving metadata between related orgs that have a deployment connection, typically sandbox to production. Their main limitation is that they are dependency-sensitive and work only within affiliated-org boundaries.
This is a classic exam concept. Salesforce documentation states that sending a change set requires a deployment connection and that change sets are for orgs affiliated with the same production org. That makes them useful for admin-friendly migrations, but not universal deployment tooling. They also require careful handling of dependencies, which is why teams with more complex release processes often move toward source-driven deployment methods. On the exam, choose change sets when the scenario is simple metadata promotion between related orgs and the audience is more declarative than developer-heavy. Do not choose them when the requirement involves unrelated orgs, advanced CI/CD control, or complex packaging strategy. A common mistake is assuming change sets are the default answer for any deployment question.
Demand Score: 70
Exam Relevance Score: 92
What should I understand about sandboxes and package-based deployment for the exam?
Understand the role of environments and the fact that package-based deployment introduces its own lifecycle, validation, and dependency behavior. Sandboxes support build-and-test isolation, while package workflows add versioning and installation considerations that differ from simple change sets.
Recent community questions about Dev Hub, unlocked packages, and installation errors show that deployment strategy is no longer just “build in sandbox, push to prod.” Even though the exam domain is App Deployment rather than deep DevOps, you still need to recognize the tradeoff: sandboxes are environment-based, while package-based delivery is version-based. Packages can improve repeatability, but they also surface issues around availability, prerequisites, and install validation. On exam scenarios, when the organization needs controlled lifecycle management and repeatable release artifacts, package-based deployment becomes more attractive. When the scenario is a straightforward related-org migration, change sets may still fit. The trap is ignoring the operational overhead that comes with packaging.
Demand Score: 69
Exam Relevance Score: 84