Check for collision before instantiating

Is there a good way to check for collision before instantiating an object? I am creating a spawn, but I don't want to create an object at a certain point if one is already occupying the space.

There's a bunch of ways to do this, you could:

  • Shoot a raycast up from the spawn point, and see if it hits anything
  • Use Physics.OverlapSphere at the spawn point to see if there are any objects in a sphere around the spawn point
  • Attach a collider to the spawn point, make it a trigger, and see if anything is tripping the trigger