• Docs
  • Changelog
Sign in
Get started
    • Home
    • Your first deploy
    • Free instances
    • Platform features by plan
    • Use with coding agents
    • FAQ
    • Templates
      • Migrate from…
        • Heroku
        • Railway
    • Compute plans
    • SandboxesBeta
      • Service types
        • Which to use?
        • Static sites
        • Web services
        • Private services
        • Background workers
        • Cron jobs
        • Workflows
        • Multi-service architectures
      • Data storage
        • Render Postgres
        • Render Key Value (Redis®-compatible)
        • Persistent disks
    • How deploys work
    • Supported languages
    • Git providers (GitHub, etc.)
    • Build pipeline
    • Deploy hooks
    • Monorepo support
    • Troubleshooting deploys
      • Previewing changes
        • Single-service previews
        • Preview environments (multi-service)
      • Docker deploys
        • Overview
        • Deploy a registered image
        • Using secrets
      • Runtime
        • Native runtimes
        • Environment variables & secrets
        • Default environment variables
    • Intro to sandboxes
    • Limits
      • How to…
        • Create & configure sandboxes
        • Execute commands
        • Manage files
        • Manage snapshots
      • Use with…
        • Claude Managed Agents
        • Cursor Cloud Agents
        • OpenAI Agents API
      • SDK/CLI reference
        • TypeScript SDK
        • Python SDK
        • CLI commands
    • Intro to workflows
    • Tutorial
    • Limits & pricing
      • How to…
        • Define tasks
        • Define flowsNew
        • Trigger runs
        • Develop locally
      • SDK reference
        • TypeScript SDK
        • Python SDK
      • Example workflows
        • TypeScript examples
        • Python examples
    • Overview
    • Create & connect
    • Database credentials
    • Extensions
    • Version upgrades
    • Logical replication
    • Legacy instance types
      • Database recovery
        • Recovery & backups
        • High availability
      • Database performance
        • Read replicas
        • Connection pooling
        • Admin apps
        • Repacking tables
        • Troubleshooting performance
    • Regions
    • Inbound IP rules
    • Edge caching
    • WebSockets
    • TLS certificates
      • Custom domains
        • Overview
        • Cloudflare
        • Namecheap
        • Other DNS providers
      • Internal traffic
        • Private network
        • Private links
      • Outbound traffic
        • Default IP ranges
        • Dedicated IP addresses
        • Outbound bandwidth
        • Handling network changes
      • Static site config
        • Custom response headers
        • Redirects & rewrites
    • The Render Dashboard
    • SSH / Shell access
    • Projects & environments
      • Service actions
        • Scaling
        • Rollbacks
        • Maintenance mode
        • One-off jobs
      • Infrastructure as code
        • Blueprints overview
        • render.yaml reference
        • Terraform provider
    • In-dashboard metrics
    • Health checks
    • Uptime best practices
      • Logging
        • In-dashboard logs
        • Log streams (syslog/HTTPS)
      • OpenTelemetry (OTel) metrics
        • Provider setup
        • Metrics reference
      • Notifications
        • Webhooks
        • Email / Slack
    • MCP Server
      • Render CLI
        • Overview
        • Command reference
      • REST API
        • Overview
        • API reference
      • Third-party connections
        • OIDC support
        • Datadog
    • Workspaces, members, & roles
    • Login settings
    • Audit logs
      • Organizations
        • Overview
        • SAML SSO
    • DDoS protection
    • Platform maintenance
      • Compliance
        • Overview
        • HIPAA (US health data)
        • HIPAA best practices
        • Shared responsibility model
        • Pentest policy
    • Heroku vs Render
    • Vercel vs Render

Default Environment Variables

Render automatically sets the values of certain environment variables for your service.

Unless otherwise noted, these environment variables are available at both build time and runtime.

Environment variable values are always strings.

In your application logic, perform any necessary conversions for variable values that represent other data types, such as "false" or "10000".

By runtime

All runtimes

IS_PULL_REQUEST

This value is true for pull request previews and false otherwise.

Note that these are the string values "true" and "false". Convert to booleans as needed.

RENDER

This value is always true. Your code can check this value to detect whether it's running on Render.

RENDER_CPU_COUNT

The service's CPU count, based on its compute plan.

For example, this value is 0.5 for the 0.5c-512mb compute plan and 2 for the 2c-4g compute plan. Note that these are the string values "0.5" and "2". Convert to numbers as needed.

RENDER_DISCOVERY_SERVICE

The Render DNS name used to discover all running instances of a scaled service. Has the format $RENDER_SERVICE_NAME-discovery.

RENDER_EXTERNAL_HOSTNAME

For a web service or static site, this is the service's onrender.com hostname (such as myapp.onrender.com).

For other service types, this value is empty.

RENDER_EXTERNAL_URL

For a web service or static site, this is the service's full onrender.com URL (such as https://myapp.onrender.com).

For other service types, this value is empty.

RENDER_GIT_BRANCH

The Git branch for a service or deploy.

RENDER_GIT_COMMIT

The commit SHA for a service or deploy.

RENDER_GIT_REPO_SLUG

Has the format $username/$reponame.

RENDER_INSTANCE_ID

The unique identifier of the current service instance. Useful for scaled services with multiple instances.

RENDER_SERVICE_ID

The service's unique identifier. Used in the Render API.

RENDER_SERVICE_NAME

A unique, human-readable identifier for a service.

RENDER_SERVICE_TYPE

The current service's type. One of web, pserv, cron, worker, static.

RENDER_WEB_CONCURRENCY

For a web service or private service, this is the recommended number of concurrent web processes for handling requests. This is based on the CPU count for the service's compute plan.

For example, this value is 1 for the 0.5c-512mb compute plan and 2 for the 2c-4g compute plan. Note that these are the string values "1" and "2". Convert to numbers as needed.

This is only available at runtime. At build time or for other service types, this value is empty.

WEB_CONCURRENCY

For a web service or private service created after December 8th 2025, this defaults to the recommended number of concurrent web processes for handling requests. This is based on the CPU count for the service's compute plan.

For example, this value is 1 for the 0.5c-512mb compute plan and 2 for the 2c-4g compute plan. Note that these are the string values "1" and "2". Convert to numbers as needed.

This is only available at runtime. At build time, for other service types, or for web and private services created before the cutoff date, this value is empty.

Other environment variables starting with RENDER_ might be present in your build and runtime environments.

However, variables not listed above are strictly for internal use and might change without warning.

Docker

Render does not provide additional environment variables on top of what's listed under All runtimes.

Elixir

MIX_ENV

prod

RELEASE_DISTRIBUTION

name

Go

GO111MODULE

on

GOPATH

/opt/render/project/go

Node.js

NODE_ENV

production (runtime only)

NODE_MODULES_CACHE

true

Python 3

CI

true (build time only)

FORWARDED_ALLOW_IPS

*

GUNICORN_CMD_ARGS

--preload --access-logfile - --bind=0.0.0.0:10000

PIPENV_YES

true

VENV_ROOT

/opt/render/project/src/.venv

Ruby

BUNDLE_APP_CONFIG

/opt/render/project/.gems

BUNDLE_BIN

/opt/render/project/.gems/bin

BUNDLE_DEPLOYMENT

true

BUNDLE_PATH

/opt/render/project/.gems

GEM_PATH

/opt/render/project/.gems

MALLOC_ARENA_MAX

2

PASSENGER_ENGINE

builtin

PASSENGER_ENVIRONMENT

production

PASSENGER_PORT

10000

PIDFILE

/tmp/puma-server.pid

RAILS_ENV

production

RAILS_SERVE_STATIC_FILES

true

RAILS_LOG_TO_STDOUT

true

Rust

CARGO_HOME

/opt/render/project/.cargo

ROCKET_ENV

prod

ROCKET_PORT

10000 (runtime only)

RUSTUP_HOME

/opt/render/project/.rustup

Optional environment variables

You can set these environment variables to modify the default behavior for your services.

All runtimes

PORT

For web services, specify the port that your HTTP server binds to.

The default port is 10000.

Elixir

ELIXIR_VERSION

See Setting Your Elixir and Erlang Versions.

ERLANG_VERSION

See Setting Your Elixir and Erlang Versions.

Node.js

SKIP_INSTALL_DEPS

Set this to true to skip running yarn/npm install during build.

NODE_VERSION

See Setting Your Node.js Version.

BUN_VERSION

See Setting Your Bun Version.

Python 3

PYTHON_VERSION

See Setting Your Python Version.

POETRY_VERSION

See Setting Your Poetry Version.

UV_VERSION

See Setting Your uv Version.

Rust

RUSTUP_TOOLCHAIN

See Specifying a Rust Toolchain.

How to set environment variables

See Environment Variables and Secrets.

Default Environment Variables
  • By runtime
    • All runtimes
    • Docker
    • Elixir
    • Go
    • Node.js
    • Python 3
    • Ruby
    • Rust
  • Optional environment variables
    • All runtimes
    • Elixir
    • Node.js
    • Python 3
    • Rust
  • How to set environment variables
All Systems Operational
© Render Inc. All rights reserved.