Squeeze the thawed spinach in a clean towel or cheesecloth until almost no liquid comes out. This step matters more than people think, because wet spinach will turn your dip watery and bland. I usually squeeze it twice just to be safe.
In a large bowl, stir the cream cheese until smooth before adding the sour cream and mayonnaise. Mixing the cream cheese alone first prevents lumps later. Once it's creamy, blend in all three together until fully combined.
Sprinkle in the vegetable soup mix or ranch seasoning along with the minced garlic. Stir well so the seasoning is evenly distributed rather than clumped in one spot. This is the step that really builds the dip's flavor base.
Add the drained spinach, chopped water chestnuts, and green onions to the bowl. Gently fold everything together with a spatula so the crunchy bits stay intact instead of getting mashed into the cream cheese.
Give the dip a taste before chilling it, since the soup mix already adds salt. Add black pepper or a pinch more salt if needed, and stir in the shredded cheese now if you're using it.
Cover the bowl with plastic wrap and refrigerate for at least one to two hours, though overnight is even better. Chilling lets the flavors settle together and gives the dip a firmer, scoopable texture.