Limit Environments for App

Hi @jeevenugo,
In Retool Cloud, there is currently no built-in way to restrict an individual app to a specific environment (like development or production). However, you can achieve similar behavior with the following workarounds:

  1. Use Environment-based Resource Switching
    In each Retool environment (Development, Staging, Production), you can configure your resources (e.g., your Postgres database, APIs) to point to different targets.
    Then, within your app reference the resource by name (e.g., main_db), and Retool will automatically use the version configured for the current environment. This ensures your app runs against the development DB when in the "Development" environment, even if it's the same app.

  2. Duplicate the App for Isolation

  • Duplicate your app and name it something like ABC [DEV].
  • Use the development environment for that version only.
  • Only publish the "main" version to Production.
    This avoids risk of someone accidentally using the app in Production during development.
  1. Restrict Access with Permissions
    You can set app-level permissions so only developers can access the development version of the app.
    Go to Apps → [Your App] → Settings → Permissions
    Limit visibility to your internal team until it's ready.

  2. Aside form just the db and depending on how you have setup the main app, you can add a page, have the new page only visible to the dev team until it is ready. To take it a step further, you could build the app in a module and place the module in this page. I like to do this as it gives you the added version control over the module or your new app.

1 Like