Can't position instantiated objects on canvas

I have a canvas set to screen space - camera. All works fine except for instantiated elements ( a 3d model and some rect transforms). When they are created, their position and size are completely different o.O. Any suggestions?
It’s working perfect with a world space canvas, but I find it more difficult to fit it to the screen…

Check what scale size of the objects you are instantiating(prefabs). They instantiate to whatever size they are set to.

Let me know.

The idea is to create this objects dynamically based on some data, so I can’t have them in the hierarchy before playing. Anyway, using transform.SetParent(transform, false) instead of transform.parent = gameTrans.transform does the trick, but I’ll try your code and maybe see why this happens. Thank you!