Preheat oven to 400°F (200°C).
Toss cubed squash with 1 tbsp olive oil, salt, and pepper.
Roast for 25-30 minutes until tender.
In a large pot, heat butter or oil over medium heat.
Add chopped onion and cook until soft (~5 min).
Stir in garlic, cinnamon, nutmeg, and ginger; cook for 1 minute until fragrant.
Add roasted (or raw) squash, broth, water, and maple syrup.
Bring to a boil, then reduce heat and simmer for 20 minutes (30 if using raw squash).
Use an immersion blender or transfer to a blender (in batches) to puree until smooth.
Stir in heavy cream or coconut milk. Adjust seasoning with salt and pepper.
Ladle into bowls and garnish with pumpkin seeds, a swirl of cream, or fresh herbs.