How does the environments section work with projects

  • 7 April 2022
  • 5 replies

Userlevel 1
  • Conversationalist
  • 6 replies

On the Amplitude Data page, when I’m on a project I can go to settings and set a production and development environment. But it’s confusing when I select the dropdown because it seems like each environment can correspond to one project but having multiple projects means you can specify environments for each project.


So my question is:

How am I actually supposed to use the environments section to specify a specific production environment and testing environment? If I want to specify a testing environment and a production environment am I supposed to create two separate projects?


And yes I have read the following article but I am still confused.


Best answer by CCrowley 13 April 2023, 23:03

View original

5 replies

Userlevel 5
Badge +9

Hello @gsw1,

Have you taken the Data course that are wonderful Education Team put together? Here is a quick link. This would definitely help you get started with Amplitude Data.


The Environment section allows you to chose 2 projects:

  1. The production project - This is your true tracking plan and what is used to do analysis in Amplitude.
  2. The development project - This is your test instance when a change is made in your tracking plan. This is to push customers to test their tracking plan before pushing to production.

Yes, if you want to specify a production and development project you will need to have/create two projects in Analytics.


In the below screenshot, I have two projects with an identical name as follows, 

Personal Project - Production

Personal Project - Development 


Once you have set the projects above, you can then leverage the Tracking Plan feature to switch between Production and Development.



I am trying to create Prod and Dev environments under my project , but get an error “Please select a different project for each environment.” Could you help with this, how to create dev environments?


Userlevel 2
Badge +2

I’m having same issue as @Julia.  The docs and answer above from @eddie.gaona indicates that a given project can have multiple environments within it. This logically makes sense to me instead of using a project for each environment.

But like @Julia, I’m having same errors. Amplitude is telling me that each environment needs a unique project.

Userlevel 1
Badge +1

I had the same confusion at first, but I think I’ve sorted it out.  It comes down to poor naming.  The “Project” in Data is not the same as the “Project” in Analytics.  The way it works is the “Project” in Data equates to a common schema which is applied to two environments. each environment equates to a single Analytics “Project” so that you can ensure you have a consistent plan across environments.  With this in place, your instrumenting team will be testing their instrumentation in dev/qa environment based on the same requirements set for the production environment.

One thing that I’ve been thinking about is when you have many projects for say different applications that have some commonalities in schema, should you have one common schema (Data Project) to align all the Analytics projects for these various applications?  For example the company has 4 applications, A, B, C, and D and often analyzes the data in cross-project views for various common activities. If a user can like a post in application A, B, and D. and a user can search by genre in application B, C, and D, then should the Data Project have one schema for all 4 applications that includes a “Post liked” event and a “search” event with “filter” property so that the same events and properties are used across all the projects that are expected to have the same nomenclature?

I wanted to echo the questions presented here. I am a novice with Data - so perhaps I am missing something (and yes, I’ve read all the documentation and taken the training videos)

Regarding @Julia ‘s comments about creating dev environments: My team has created a separate dev environment per @eddie.gaona ‘s post. However, like @Julia ‘s question - I had to create and map the “Development” environment to a different project “Development - Unify (I was not able to map it to the existing Amplitude environment/project -”PROD-Unify”). 

So, should I (safely) assume that the “Development” drop down in the right pane maps to the “Development - Unify” environment I had to create?

Also, as you may also see from my screenshot, I have several planned events in the “Development” area but these events are also live in my main branch - should I assume that since this is a separate environment, they will not reflect the “live” version of events in the main branch?

I’m trying to wrap my head around the order of operations for this work: if I want to add events to the environment/project, I have to create a Development branch off the main (this follows with the training). However, I need to make sure I give the Devs the development api key to ensure the event shows up (to be seen) in the development environment - is that correct?