Wash, core, and separate cauliflower into florets.
Peel and dice onions.
Cut ginger into a 1-inch piece, peel, and chop roughly.
Peel and roughly chop garlic.
Wash and stem cilantro.
Peel and dice potatoes into ½-inch pieces.
Add coconut oil to a large pot over medium heat. Add onions and cook until soft and translucent (about 5 minutes). Add coriander, cumin, garlic, and ginger; stir gently for 30 seconds.
Add cauliflower, potatoes, salt, and pepper; cook for another 5 minutes (add a bit of water if needed).
Add cayenne and turmeric, then add water or vegetable stock.
Bring to a simmer and simmer for about 30 minutes.
Place the soup into a blender and process until smooth (you may need to do this in batches).
Place the blended soup back in the pot and simmer for a few more minutes.
Serve with optional cilantro garnish.