Prep the spinach. If using fresh spinach, sauté it in a dry skillet over medium heat until wilted, 2–3 minutes. Let it cool, then squeeze out as much liquid as possible with clean hands or a towel, and chop finely. If using frozen spinach, thaw fully and squeeze dry. Excess moisture will water down the dip.
Mix the creamy base. In a large bowl, combine vegan mayonnaise and dairy-free yogurt or sour cream.
Whisk until smooth and well combined.
Add aromatics and seasonings. Stir in garlic, green onions, lemon juice, onion powder, dill, salt, pepper, nutritional yeast (if using), and red pepper flakes. Taste and adjust salt and lemon as needed.
Fold in the spinach and water chestnuts. Add the chopped spinach and water chestnuts. Mix gently until everything is evenly distributed.
Chill for best flavor. Cover and refrigerate for at least 1 hour. Resting time lets flavors meld and the texture firm up.
Serve. Stir, taste one more time, and adjust seasoning.
Transfer to a serving bowl. Drizzle a little olive oil or sprinkle extra dill or green onions on top if you want a finishing touch.