I have tried using Offset but because some screens are bigger, the gui won't be in the same position either.
To get a gui to be the same on all screens, and to make it square you simply need to set the X.Scale, and then set the AbsoluteSize.Y to the same as the AbsoluteSize.X
script.Parent.Size=UDim2.new(0,AbsoluteSize.X,0,AbsoluteSize.X) --This would set the Y size to the same as the X
Before using this script, make sure that the X size is already set on the gui.
Anyways, I hope this cleared things up for you a little bit. Hope I helped as well :P
just saying the correct script from above
script.Parent.Size=UDim2.new(0,AbsoluteSize.X,0,AbsoluteSize.X)