Skip to main content
On this page

Migrating from Deploy Classic to Deno Deploy

Deno Deploy Classic (dash.deno.com) and the subhosting v1 API (apidocs.deno.com) will be shut down on July 20, 2026. This guide covers migrating your applications and API integrations to the new Deno Deploy platform. If you are migrating from the subhosting v1 API, see the subhosting API migration guide.

Create a new organization Jump to heading

The new Deno Deploy uses a separate account system. To get started:

  1. Go to console.deno.com and sign in
  2. Create a new organization (if you don't have one already) — this is required before you can deploy any applications
  3. Invite team members to your organization as needed

Your Deploy Classic projects at dash.deno.com are not automatically transferred. You will need to create new apps and redeploy.

Create and deploy your app Jump to heading

In the new Deno Deploy dashboard, create a new app within your organization. You can deploy via GitHub integration or the CLI.

GitHub integration Jump to heading

Connect your GitHub repository from the app settings in the dashboard. The new Deploy has fully integrated builds — no more GitHub Actions YAML configuration. Build logs stream directly in the dashboard.

CLI deployment Jump to heading

The deployctl CLI is also being sunset. Use the deno deploy subcommand instead:

deno deploy

See the getting started guide for detailed setup instructions.

Environment variables Jump to heading

Deploy Classic used a single set of environment variables for all deployments. The new Deploy supports separate production, development, and build timelines.

Review your environment variables and set them up in the new dashboard under your app's settings. See environment variables and contexts for details.

Custom domains Jump to heading

To migrate a custom domain:

  1. Add the domain to your new Deploy app in the dashboard
  2. Configure the _acme-challenge CNAME record for TLS certificate provisioning
  3. Update your DNS records (CNAME or ANAME) to point to the new Deploy
  4. Allow up to 48 hours for DNS propagation before removing the domain from Deploy Classic

See the custom domain migration tutorial for a step-by-step walkthrough.

Cron jobs Jump to heading

The Deno.cron() API works the same way on the new Deploy. Your existing cron job code should work without modification. See the cron reference for details.

Queues Jump to heading

Deno queues (Deno.Kv.enqueue() / Deno.Kv.listenQueue()) are not supported on the new Deno Deploy. If your application relies on queues, you will need to adopt an alternative approach — for example, an external message queue service or a database-backed job queue.

KV database Jump to heading

Deno KV is available on the new Deploy, but your existing KV data is not automatically migrated. Contact support@deno.com for assistance migrating your KV database.

See Deno KV on Deploy for information about how KV works on the new platform, including per-timeline database isolation.

Subhosting API migration Jump to heading

The subhosting v1 API at apidocs.deno.com will be shut down alongside Deploy Classic on July 20, 2026. Migrate your integrations to the v2 API.

The v2 API has significant architectural changes — projects become apps, deployments become revisions, and each app represents a single deployable service. See the subhosting API migration guide for detailed endpoint mappings, request/response changes, and new features like labels and layers.

Official SDKs for the v2 API:

Regions Jump to heading

Deploy Classic serves from 6 regions. The new Deploy currently has 2 regions, with the ability to self-host additional regions on your own infrastructure. If your application is latency-sensitive and depends on specific regions, please plan accordingly.

What's new Jump to heading

The new Deploy includes several features not available in Deploy Classic:

  • Full Deno 2.0 runtime — FFI, subprocesses, file system write access, and improved npm compatibility
  • Integrated builds — build steps run on Deno Deploy with live-streamed logs, no GitHub Actions YAML required
  • First-class framework support — Next.js, Astro, SvelteKit, Fresh, and more work out of the box
  • CDN caching — built-in edge caching with Cache-Control headers and programmatic cache invalidation
  • Observability — logs, traces, and metrics in the dashboard
  • Static site support — deploy static sites directly
  • Separate dev/prod environments — different environment variables and databases per context

If you have questions or need help, contact support@deno.com.

Did you find what you needed?

Privacy policy