It's a good question and a safety issue too. My solution—teach your dog to go get a toy (video example below).
The standard advice for an alternative behavior instead of jumping when guests enter is teaching the dog to lie on a mat or sit while people enter. What? Be still? Expecting an exuberant and social dog to lie or sit still when someone enters the door, whether it be me or a guest entering, seems unrealistic.
Consider human behavior when someone knocks on your door. When a guest enters my house, I usually hurry to the door, greet the person, and even touch them (delivering a hug), so why should I expect my dog to be a statue when someone enters?
I much prefer teaching an active behavior that lets the dog expend energy. I've been teaching Keaton to "go get a toy" when I enter the house. If he's rushing off to get a toy, he's not jumping on me.
He loves toys, so getting him to hold a toy in his mouth was easy. I taught him to drop the toy, then I threw it a short distance away, and as he was going to retrieve it, I added the verbal cue "Go get a toy," and he'd bring it back to me. I practiced in different house rooms, then eventually began practicing when I came inside from working in the garden.
In this video of Keaton, you'll see me cue him to get the toy—he's excited and wiggly, and he lifts his paws, but he doesn't jump on me. Instead, he gets a toy (or at least what I think is his toy) and launches into his red chair. A closer look shows he has another item in his mouth—not a toy. Who cares? You'll see my surprise, but he did what I asked, and I couldn't have been more pleased.
I'd love to hear about your solutions for door greetings.
Beautifully done by you and Keaton! Yes, I find sending dogs for toys is a great approach for excited dogs!
Hi Lisa - good one! In this same vein, I also sometimes suggest leaving a basket of toys (or treats) outside the door and having the visitor grab some to toss for the dog - directing the dog's energy away from the guest to the tossed toys or treats. You can also add in - teaching the dog to sit in order to get the guest to toss toys or treats.