Typically, a deck should be stained or painted every 2-3 years, depending on the type of product used and the exposure to weather conditions. Regular maintenance helps protect the wood from damage and keeps the deck looking its best.