This is fixable but not by addressing the barking, which is why most attempts fail.
The dog is not barking at the guest. The bell has become a starting pistol — bell means adrenaline, adrenaline means barking, and by the time the door opens the dog is already over threshold and cannot hear you.
So you change what the bell means, and you do it with nobody at the door.
- Get someone to ring the bell while you sit in the lounge with a handful of chicken. Bell rings → you say nothing → chicken appears. Dog barks anyway the first ten times. Ignore it, chicken still appears. You are not rewarding the bark, you are pairing the sound with food.
- Do this for a week. Twenty repetitions a day, spread out. It is dull and it is the entire exercise.
- Around day 4–7 you will see the thing that tells you it is working: bell rings and the dog looks at you instead of the door. That is the whole game won.
- Now add a job. Bell rings → dog goes to a mat and gets fed there. The dog needs something to do, because "stop barking" is not an instruction an excited animal can follow.
- Only then start with a real person at the door, and start with someone the dog already likes.
Two things that will sabotage you. Practising only when real guests come — far too high-stakes, the dog is already over threshold. And going too fast: if the dog cannot eat the treat, you have gone past what it can handle, back up a step.
Took me about six weeks with a very barky rescue. He still gives one bark at the bell. I stopped trying to remove that one, honestly it is useful.