Heat leaves a house two ways: slowly through materials, and quickly through gaps. Insulation addresses the first and costs thousands. Draught-proofing addresses the second and costs very little.
For most older houses the second is where the quick wins are.
Start with the obvious openings
External doors are the usual first target. A brush strip along the bottom and self-adhesive foam or rubber around the frame takes twenty minutes and addresses one of the largest single gaps in the building.
Letterboxes are worth a dedicated brush or flap — an unsealed one is a permanent hole through an external wall at exactly the height that produces a noticeable draught.
Keyholes on old doors are small but sit in the same airstream; a simple escutcheon cover deals with them.
The ones people miss
Unused chimneys are frequently the biggest loss in the house and the least considered. An inflatable chimney balloon or a purpose-made cap stops a continuous updraught pulling warm air out of the room.
Floorboards in older properties leak considerably at the perimeter where boards meet skirting. Flexible filler along that junction is unglamorous and effective.
Loft hatches are usually a bare board sitting in a frame with no seal at all, directly beneath the coldest space in the building.
What to leave alone
Not every draught should be sealed. Air bricks, extractor vents and any ventilation serving a gas appliance are there deliberately, and blocking them ranges from damp-inducing to dangerous.
The rule is straightforward: seal gaps that exist by accident, leave openings that exist by design.