Mix both in the same building — occupancy always reflects the truth on the ground.
No beds to track. The rent comes off the room, and a full room counts as one occupied space — clean and simple for family lets.
Split a room into beds and rent each separately. Occupancy counts every bed, so a room with three of four taken shows exactly that.
Mark a tenant moved out and their room or bed goes vacant, the contract ends, and billing stops — automatically.
When you add a tenant, the picker lists just the vacant beds and rooms. You never have to remember what is free.