That’s my guess because there is not reason for the spawnpoint to teleport the player on the roof unless there is something that is stopping it from spawning the player inside the box.
I want you to try deleting the walls and roof, only leave the floor and spawnpoints. And tell us whether the player spawns correctly or not.
Make the roof CanCollide is false, I know that problem when spawning, some much of studs in roof can when you spawned and the roof is CanCollide is true from that position you will spawn on roof.