Premade Part/Model or Create New Part/Model on Runtime/Request

Which is a more optimal method?

  1. Having a lot of premade parts/models in a game

  2. Creating a script to create the part/model

For instance, I want to give my players the utmost capacity to customize their house in-game, should I create premade variations or a system to create variations as per customized request?

I think the first option is more optimal.