How to overcome the loading delay of a MeshPart?

I have all Meshpart stored in ServerStorage. The first time I need a part, inside the server Script I parent it to ReplicatedStorage. Then (within LocalScript) I clone the ReplicatedStorage to workspace. So far so good.
However, when I run this in the game, Meshpart sometimes takes 1 second to appear, even after Clone(). So I thought Clone() yields.

Here you can see there is a delay between I click on an item in the GUI and the MeshPart effectively appears on the screen (I put it in slow-motion for a better understanding):

It happens ONLY THE FIRST TIME I click the item. The second time on, the render is immediate.

How to avoid this delay on the first render?

You could try preloading? Aka just having a copy of each model loaded already to workspace and on the players mouse for say 0.1 seconds or so and then delete them. That way whenever the player actually wants to use them you wouldn’t have a loading delay. This is just an idea as i have no real understanding of how your script works.

Or a small enough amount of time so that its not visible that it ever occured

The MeshParts are stored on purpose in ServerStorage, so that this prevents the game from loading all parts unnecessarily, consuming a lot of initial game loading time. In this way, the part will be replicated to the player’s workspace only when requested.
The problem is only visual, according to the GIF I put.
I don’t want to load all MeshParts in advance. But I also don’t want this delay when MeshPart is selected.

Have you tested this problem with other people on other pcs? To see if its just your pc?

That’s not the problem. I’m pretty sure there is another explanation for that.

Besides pre-loading the meshes i don’t know what else you could try.