# How to migrate your application to Azion

import DocButton from '~/components/webkit/DocButton.vue';

This guide provides a step-by-step path for migrating existing applications to Azion. It outlines the necessary requirements and details the steps for a successful transfer of applications from other services to a distributed architecture.

---

## Migrating from other platforms

If you're migrating from a specific platform, Azion provides dedicated migration guides:

- **Akamai**: [Akamai to Azion migration guide](/en/documentation/products/guides/akamai-migration-guide/) - covers Ion, App & API Protector, EdgeWorkers, EdgeKV, Cloudlets, Edge DNS, Global Traffic Management, NetStorage, DataStream, mPulse, and Prolexic
- **AWS**: [AWS to Azion migration guide](/en/documentation/products/guides/aws-migration-guide/) - covers CloudFront, Lambda, S3, DynamoDB, Route 53, WAF, DDoS protection, and observability
- **Cloudflare**: [Cloudflare to Azion migration guide](/en/documentation/products/guides/cloudflare-migration-guide/) — covers Workers, KV, R2, D1, DNS, WAF, and more
- **Fastly**: [Fastly to Azion migration guide](/en/documentation/products/guides/fastly-migration-guide/) - covers Full-Site Delivery, Compute, Edge Data Storage, Object Storage, WAF, logging, and observability
- **Vercel**: [Vercel to Azion migration guide](/en/documentation/products/guides/vercel-migration-guide/) - covers Projects, Preview Deployments, Functions, Blob, Edge Config, Firewall, Web Analytics, and observability

---

## Why migrate to Azion

Migrating to Azion Web Platform provides distinct advantages for modern applications:

**Performance**
- Cold-start-free execution on a distributed architecture
- Instant deploys with zero-downtime updates
- Global points of presence that execute logic close to your users

**Cost efficiency**
- Zero egress fees for data transfer over Azion's infrastructure
- Predictable pricing without hidden bandwidth charges

**Platform unification**
- Build, secure, store, and observe in one integrated environment
- Consistent APIs and configuration patterns across all capabilities
- Single platform for applications, functions, storage, databases, and security

:::note
If you're subscribed to **Business Support** or higher, you have access to specialists via [Integration Services](/en/documentation/services/integration-services/). For more detailed information, see [Azion Support](https://www.azion.com/en/professional-services/).
:::

---

## Prerequisites

Before starting the migration, ensure you have the following:

- **Azion account**: Create a free account at [Azion Console](https://console.azion.com/). You'll need access to the Console to create applications and configure domains.
  <DocButton href="/en/documentation/products/accounts/creating-account/" label="Create an Azion account" kind="secondary" target="_blank" size="medium" />

- **Azion CLI** (optional but recommended): Install the CLI for local development and deployment. The CLI provides a streamlined workflow for building, testing, and deploying applications.
  <DocButton href="/en/documentation/products/azion-cli/overview/" label="Azion CLI overview" kind="secondary" target="_blank" size="medium" />

---

## Before you begin

Before you migrate applications to Azion, there are two major variables that must exist:

1. **Connector**: the source server of the application. This entry point takes the form of either a host, an IPv4, or an IPv6 address of a storage service or an existing application.
  <DocButton href="/en/documentation/products/secure/connectors/" label="Go to Connectors reference" kind="secondary" target="_blank" size="medium" />

2. **Workload**: the target domain of the application. This output takes the form of an Azion domain, which can be pointed to a custom domain.
  <DocButton href="/en/documentation/products/secure/workloads/" label="Go to Workloads reference" kind="secondary" target="_blank" size="medium" />

Most applications need a connector from which Azion retrieves the content and code that make them up. That application passes through Azion's global points of presence for it to be delivered to users through a domain address associated with a workload.

<DocButton href="/en/documentation/products/guides/build/overview/" label="Go to Applications overview" kind="secondary" target="_blank" size="medium" />

---

## Step 1: Create an application

You can start by creating an application using a basic template. A recommended option is the [Azion Starter Kit](/en/documentation/products/guides/azion-starter-kit/) template, which helps you create a basic edge stack to explore the platform.

<DocButton href="/en/documentation/products/marketplace/templates-and-integrations-overview/" label="Go to Templates reference" kind="secondary" target="_blank" size="medium" />

See the [full list of available templates](/en/documentation/products/guides/#azion-templates).

---

## Step 2: Test locally

Before fully deploying the application, the recommendation is to [stage your application through the hosts file](/en/documentation/products/guides/stage-applications-through-hosts-file/) to ensure everything is working correctly. This step helps to identify and address any misconfigurations or issues caused by the migration.

---

## Step 3: Point the domain to a workload

The final step to fully migrate your application to Azion is to point your custom domain to the Azion's workload. By doing so, you allow users to access your application through its domain, reducing latency and processing costs on the origin.

<DocButton href="/en/documentation/products/guides/point-domain-to-azion/" label="How to point a domain for a workload" kind="secondary" size="medium" />

---

## After migration

Once your application is running on Azion, configure these essential features:

### Configure observability

Monitor your application's performance and behavior in real time:

- **[Real-Time Metrics](/en/documentation/products/observe/real-time-metrics/)** — View requests, bandwidth, latency, and cache hit ratios through dashboards and GraphQL API
- **[Real-Time Events](/en/documentation/products/observe/real-time-events/)** — Access detailed logs for requests, functions, WAF events, and more for troubleshooting

### Enable security features

Protect your application with Azion's security capabilities:

- **[Web Application Firewall](/en/documentation/products/secure/firewall/web-application-firewall/)** — Guard against SQL injection, XSS, and other application-layer attacks
- **[DDoS Protection](/en/documentation/products/secure/firewall/ddos-protection/)** — Automatic protection against volumetric and protocol attacks

### Continue learning

Explore the documentation to get the most from Azion Web Platform:

- [Applications documentation](/en/documentation/products/build/applications/)
- [Functions documentation](/en/documentation/products/build/applications/functions/)
- [Rules Engine documentation](/en/documentation/products/build/applications/rules-engine/)