Young puppies can’t hold their bowels & bladders for long. If you come home to find that they’ve had an accident in there it’s quite possible that they can’t hold it that long. Generally puppies can hold their bladder for about one hour per month of age. So your 3 month old pup can probably only hold their bladder for about 3 hours. If you’re going to be away at work for long periods of time see if you can get a neighbor, relative or dog sitter to come over to let your pup out during the day.
You should always accompany your puppy outside for potty breaks. You’re there not only to ensure that he actually goes, you’re also there to reward your puppy with a treat for going in the proper spot. Wait until your puppy finishes eliminating and immediately give him a tasty reward for a job well done. If you wait until you get back in the house, your puppy won’t make the connection between his elimination and the reward.
Suppose you consistently praise your puppy for their actions, while potty training. Then say your dog has an accident. Do not praise you dog immediately. Instead, take your dog outside and wait for it to go to the bathroom. When it finishes doing its business, take it inside, and keep it in a separate room while you clean up the mess. After this you should act disappointed in your dog, but only for a few minutes. Keep you and your dog motivated to potty train.
It’s best not to punish the puppy for making a mistake. Instead, focus on praising appropriate bathroom behavior. If you catch your puppy in the act, interrupt it by saying “No!” in a firm voice or clapping your hands loudly, then take the puppy outside to finish going to the bathroom. Never swat your puppy, yell at it, or try to rub its nose in the mess.