Look at the number of screens you have.
However, a lot of your screens have only have around 50 blocks. Try to combine 5 screens that have around 100 blocks into 1 screen that has 500 blocks.
When we define virtual screens, we use one 'real' App Inventor Screen (most often Screen1). Screen-sized Vertical Arrangements on it are displayed/hidden as required - they are the Virtual Screens. This is generally a better approach for multi-screen Apps, they share data without having to "pass" it between screens and it also reduces code duplication, making the App more efficient and the code easier to follow if you have to return to it at a later date.
So, instead of separate "houses", virtual screens are "rooms" of the same "house".
Taken from here. Thank you Chris!
Also, you are incorrectly switching screens. Think about a screen as a tab in Chrome. When you open a screen like this:
![]()
your old screen is still in the background, but inactive. The old screen is really unnecessary. When you open Screen1 in "Screen1causewhythehecknotquestionmark" again, you have 2 unnecessary screens in the background and 1 active screen. Pile that up, you have opened 20 screens, which is way over the limit.
