Render projects enable teams to organize their services by application and environment:
For example, your application might consist of a static frontend dashboard, a GraphQL backend service, a few cron jobs, and a PostgreSQL database. By organizing all of these services into a project, you can find and manage them more quickly.
Every project includes one or more environments (such as Production in the screenshot above). If you run production, staging, and test versions of your application, you can add each version’s associated services to a different project environment.
Each project environment can have its own scoped configuration for values like database URLs and API keys.
Projects require a team account.
In the Render Dashboard, click New > Project:
The following form appears:
Provide a name for your new project, along with a name for its first environment.
- Both of these names are for your own informational purposes. You can change them later.
Click Create a project.
That’s it! You’re redirected to the page for your new project.
If an environment in your project is empty, it displays buttons for creating a new service or moving some of your team’s existing services into the project:
You can specify a new service’s associated project and environment during the creation flow.
You can bulk-move services to an environment by selecting them in your team’s service list and then clicking Move:
You can also move an individual service by opening its ••• menu and clicking Move:
Your team’s homepage in the Render Dashboard lists all projects at the top:
Click a project to open it. Services belonging to a project appear on that project’s page, not on your team’s homepage.
- To add an environment to a project, click Add Environment at the top right of the project’s page.
- To configure an existing environment, click the gear icon at the top right of that environment’s section on the project’s page.
- To rename or delete an entire project, click the gear icon at the top right of the project’s page.
- Deleting a project deletes all of its associated environments and services.
- Deleting an environment deletes all of its associated services.
Environment groups are a helpful way to share environment variables and/or secret files across multiple Render services in your team.
You can optionally scope an environment group to a single environment in your project. This helps you share common configuration across multiple services in that environment, while also ensuring that services in other environments can’t use that environment group.
Move an environment group into an project environment from the group’s info page by clicking Manage > Move group:
After you move your environment group, it appears on the project’s overview page:
No, Render does not apply special logic to any environment based on its name. “Production” and “Staging” are provided as name suggestions because they’re commonly used.
Belonging to a project has no direct effect on a service’s behavior. Project environments are not network-isolated from each other, so services in different environments can intercommunicate as usual.
Note that you can apply environment-scoped configuration to a service only if that service belongs to the corresponding project environment.
Yes! You can move any of your Blueprint-managed resources into a project environment. Whenever you sync updates to your
render.yaml file, Render keeps those resources in their assigned project environment, so your dashboard stays tidy.
No, all of a team’s services must have unique names—even services that belong to different project environments.