Instantiate Prefab in memory?

Is it possible to create a prefab (basically a GameObject) at runtime, purely in memory?

Basically I can do:

GameObject someObject = (GameObject) Resources.Load("somePrefab");

This will create a someObject gameobject in memory - without placing it in the scene - allowing it to be instantiated. But when I do:

GameObject anotherObject = new GameObject(...);

It will automatically place it this gameobject into the scene. I want it to exist only in memory so I can create copies from this “prefab” by using Instantiate.

Is this possible?

This might be what you’re looking for, though some of it seems to be pro only:

I’m not sure whether Unity is set up to do what you describe. However, why not just instantiate a GameObject that is not active, then make copies of that object and activate them on the fly?