Quick answer: Azure Data Factory can be moved between environments by exporting an ARM template from the development factory, updating its parameters for the target environment, and deploying the template to the target resource group. For repeatable deployments, use source control and an Azure DevOps CI/CD pipeline rather than treating manual export/import as the long-term deployment process.
Prerequisites
1. An Azure subscription and permissions to deploy resources to the target resource group.
2. Azure PowerShell with the current Az PowerShell module installed.
3. Access to the source and target Data Factory environments.
Export Azure Data Factory
The Azure Data Factory portal can export a Resource Manager template containing the factory configuration. Microsoft currently supports both manual ARM-template promotion and automated CI/CD deployments.
- Open Azure portal and open your Azure Data Factory.
- Open Manage and select ARM template under the source-control/ARM-template options.
- Select Export ARM template.
- Download the generated ZIP file and extract it. The main files are
ARMTemplateForFactory.jsonandARMTemplateParametersForFactory.json.

Update the ARM template parameters
Before deploying to another environment, review ARMTemplateParametersForFactory.json and replace environment-specific values such as the target Data Factory name, linked-service settings, Key Vault references, and other parameterized resource values.
The target Data Factory name must match the value supplied for the factoryName parameter. Do not replace secrets with plain-text values just to make the deployment work; use secure parameterization and Azure Key Vault where appropriate.

Note: Global parameters require special consideration when using ARM-template deployment. If they are not included in the exported template for your workflow, recreate or manage them in the target factory as part of deployment. Microsoft also recommends source control and CI/CD for repeatable deployments.
Available on Microsoft Store
SSRS Reports Migration Wizard
A simple Windows tool for migrating SSRS reports, data sources, and related configurations between report servers.
Import Azure Data Factory
You can deploy the exported ARM template manually through the Azure portal or automate the deployment with Azure PowerShell/Azure DevOps. The following PowerShell example uses the Az module and deploys the template to an existing target resource group.
$templateFile = "C:\ADF\ARMTemplateForFactory.json"
$parameterFile = "C:\ADF\ARMTemplateParametersForFactory.json"
$deploymentName = "ADF-Deployment"
$tenantId = "<tenant-id>"
$subscriptionId = "<subscription-id>"
$resourceGroupName = "<target-resource-group>"
# Sign in to the target tenant and subscription
Connect-AzAccount -Tenant $tenantId -Subscription $subscriptionId
# Deploy the ARM template
New-AzResourceGroupDeployment `
-Name $deploymentName `
-ResourceGroupName $resourceGroupName `
-TemplateFile $templateFile `
-TemplateParameterFile $parameterFile
Update the file paths, tenant ID, subscription ID, resource group, and parameter values for your environment. The ARM template contains the Data Factory resource configuration, so no separate Data Factory creation command is needed after the ARM deployment.
For a manual deployment, Microsoft also supports importing the exported ARMTemplateForFactory.json through the Azure portal’s ARM template deployment experience.

Use CI/CD for repeatable Data Factory deployments
Manual export/import is useful for a one-off migration, but source-controlled Azure Data Factory projects should normally be deployed through CI/CD. Microsoft supports an Azure DevOps flow that validates the Data Factory resources and generates ARM templates as build artifacts using the @microsoft/azure-data-factory-utilities package.
- Store the Data Factory resources in Git and use pull requests to review changes.
- Validate the resources during the build.
- Generate the ARM template as a build artifact.
- Deploy the artifact to test and production with environment-specific parameters.
Microsoft’s newer automated publishing flow can run validate and export through the ADF utilities package. The generated ARM template is an artifact for deployment; generating it does not itself publish changes to the live factory.
Large Data Factory deployments
As a Data Factory grows, the generated ARM template can exceed Azure Resource Manager template limits. Data Factory supports linked ARM templates for larger factories. In that case, the deployment uses ArmTemplate_master.json and its linked child templates instead of only ARMTemplateForFactory.json.
Pro tips:
1. Treat ARM templates as deployment artifacts, not as a replacement for source control.
2. Keep environment-specific values in the parameter file or your CI/CD variable/secret system instead of hard-coding credentials.
3. For production deployments, prefer incremental ARM deployment mode; Microsoft warns that complete deployment mode can delete resources that are not present in the template.
4. Use Microsoft’s current pre/post-deployment scripts when triggers or deleted resources need special handling during CI/CD. The current guidance recommends PowerShell Core in Azure DevOps tasks.
5. For automated publishing and deployment with Azure DevOps, see Azure Data Factory Deployment Using Azure DevOps.
See more
Visual Studio Marketplace
SSIS Catalog Migration Wizard
Extend Visual Studio with an easy way to migrate SSIS Catalog projects.
Kunal Rathi
With over 15 years of experience in data engineering and analytics, I've assisted countless clients in gaining valuable insights from their data. As a dedicated supporter of Data, Cloud and DevOps, I'm excited to connect with individuals who share my passion for this field. If my work resonates with you, we can talk and collaborate.






