Ive tried to use Y.X sizing but I don't get the size as accurate
In the properties of whatever you're trying to fit to the SurfaceGui, there is a Size value. In this value; there are two 2-part values: X and Y, in each of them, you'll find: an Offset value, and a Scale value. If you set the scale value on each to 1, so that the Size property looks like: {1, 0},{1, 0} Then you will get the same size as the part you're putting it on.