Construction script spawning vs placing in editor

Is there a difference in performance between the 2 methods? Is the construction script ran on game start? The reason I ask is that I am trying to generate levels with tiles read from a CSV file and I don’t think it would be a good idea to iterate over all that tile data at runtime and instead would prefer to use the construction script to place everything in the editor and have it already placed at runtime if it saves performance.

Am I just misunderstanding how the construction script works?

Ofcourse, it is better to spawn something in Editor, not in runtime. But it depends on your purposes.

With blueprints use construction script to spawn/generate environment.

With C++ use PostEditChangeProperty, to update procedural generation.

Here is few examples with blueprints from my work.

https://forums.unrealengine.com/community/community-content-tools-and-tutorials/1491686-procedurally-instanced-meshes

Construction script is called in editor and again when packaging. This means anything which could randomly change on construction may not necessarily be the same in the final game. However, if it is always the same, spawning actors in the construction script is fine. It is not run again for placed actors, but actors spawned at runtime will run the construction script.

So it only runs in those situations and not every time you run the packaged game?

Yes, for actors already placed in the world