Gameobject placing halfway through ground?

I’m making an RTS and I have a GUI that allows me to click a building I want to place and it copys it so I can place it somewhere on the ground but whenever I click to place the building it is halfway in the ground already (See picture). What is causing this to happen?

if (Physics.Raycast (ray, out hit, Mathf.Infinity, Ground)) {
				currentBuilding.transform.position = new Vector3 (hit.point.x, 0f, hit.point.z); 
				//currentBuilding.transform.position = hit.point;

//Both ways make the building go through the ground...

The origin/pivot of your model is in its center, not at its bottom. You’re setting its Y to 0, which is where your ground plane is. So, anything in the model below its origin will be below 0, which is below your ground plane.

Pause in play mode, and look at the model in the scene view.