That is a really good idea about holding scenes via reference but not adding them to the tree until they are needed. That is a smart simple solution. For some reason I did not consider that. This conversation has been very helpful for future optimizations and improvements. I will definitely try the off tree technique for future optimization tricks.
I choose to avoid the multi-threaded export because of our experiences in the past year with them. Safari is definitely still a problem with SharedArray support at least on iOS. Most non-mainline (e.g. things like googles search browser on android, or other embeded browsers, not chrome, which for some reason many people actually use) browsers also do not support Shared Array support. I also saw Firefox break Shared Array support 3 times in the last year.
Oh and now I remember cross-origin isolation. I would like to be able to have the games be-able to call home to our website to check for news updates. I also would like the potential for multiplayer support in the future. I do not know for sure that all of this conflicts with Cross-Origin Isolation, but it seemed to be causing me problems. By not needing to meet cross-origin isolation requirements, I can have the game check for news content on our site and ideally in the future add a server that would allow for dynamic multiplayer akin to No-Man's Sky. At least those are my wild plans...
Thank you for the discussion.