Usually dogs look for something comparable to grass when they are inside which is either a plant or more often the carpet.
Dog suddenly eating carpet.
When dogs eat carpet it is a sign that the dog is looking for grass to help it regurgitate.
Dogs may have something called excessive licking of surfaces or els where they lick not only the carpet but also any other type of flooring as well.
According to webmd s pet section as puppies lose their baby teeth they experience pain that can intensify their desire to chew on anything and everything.
If your puppy starts to chew on your carpet it could be because he s teething.
Based on the new information that this behavior does not happen when you are not home but in fact when you are at home it is likely to be pica which is the consistant ingestion of non food item.
Excessive licking of surfaces.
Usually this ends by the time your puppy turns 6 months old.
Indeed when dogs have an upset stomach their instinct is to eat grass so they can induce themselves to vomit but in a domestic setting at home there s no grass to eat so the dog reaches out for the carpet or anything else in reach.
Dog licking the carpet one possible explanation for this behavior is that the dog has a digestive problem.
When dogs are outside they usually scratch the dirt and ground in order to regulate their temperature and claim territory for their own.
I know of no dietary deficiency that would cause a dog to eat carpets.