Migrate from Render

Move from Render to your own server.

Move each Render web service, worker and database to a server you own, and stop paying for every one of them separately.

Render, mapped to Beep.

RenderBeep
Web serviceWeb service with a URL and HTTPS
Background workerWorker service with no public address
Cron jobA cron job service, in the time zone you choose
Static siteStatic service served from Beep’s edge
Render Postgres or Key ValueManaged Postgres 16 to 18, Redis or Valkey
Pre-deploy commandPre-deploy command, run before each release
Health check pathHealth check path; traffic moves once it passes
Custom domainPoint a CNAME at Beep; certificates are issued and renewed for you
Deploy on pushEvery push to the tracked branch on GitHub or GitLab builds and releases

Step by step.

  1. Connect a server

    Use Beep Cloud, a server in your own cloud account, or any Ubuntu or Debian VPS. Beep installs its runtime and agent and locks the server down: inbound traffic is denied, and app ports are reachable only from Beep’s edge.

  2. Recreate each Render service

    Create a Beep service from the same repository and branch for every web service, worker and cron job. Carry over the start command, pre-deploy command and health check path.

  3. Copy your environment variables

    Add each variable to the matching service, mark secrets as secret, and replace connection strings with references to Beep’s managed databases, written ${{ service.KEY }}.

  4. Create the databases and move the data

    Add managed Postgres, Redis or Valkey, then copy the data across. For Postgres, dump from Render and restore into Beep; for large or busy databases, pause writes first so nothing is lost.

    Postgres
    pg_dump "$RENDER_EXTERNAL_DATABASE_URL" --format=custom --no-owner > app.dump
    pg_restore --no-owner --dbname "$BEEP_DATABASE_URL" app.dump
  5. Test on the Beep URL

    Every service gets a URL on edge.usebeep.sh. Check the app there while Render still serves your users.

  6. Switch your domain

    Point your domain’s CNAME at Beep. Certificates are issued automatically, and traffic moves as DNS updates.

  7. Turn off Render

    Once traffic has moved and the data is in place, remove the Render services so you stop paying for them.

Leaving Render, answered.

Straight answers. Anything missing, ask us directly.

Will moving from Render cause downtime?

Your app keeps running on Render while you set up and test Beep, and traffic moves when you switch DNS. The one thing to plan is the database: pause writes during the final dump and restore, or accept a short read-only window.

Do I need to change my code?

Usually not. Beep builds the same repository with Railpack or your Dockerfile and sets PORT for each service. Update connection strings to reference Beep’s managed databases.

How long does it take?

Most of the work is copying settings and variables, then moving the data. The data copy takes as long as your database size and connection allow.

Own your infrastructure again.

Plans from $1 a month, billed per server, never per service.

Early access · We’ll set up your workspace

Or talk to us →