In a high-speed blender, combine the water, 4 dates (use 5 if they are on the small-side), ground flax, hemp hearts, cacao powder, almond butter, and spinach, if using. Blend until very smooth, stopping to scrape down the blender, if needed.
Taste the smoothie and make sure the taste is to your liking. Keep in mind that the flavor will be diluted once you add the ice, but this is your chance to add more sweetness or more cacao powder, if needed.
Add the ice cubes, and blend again, until the shake has more of a slushy-like texture. Keep in mind that that more ice you add, the more diluted the chocolate flavor will be, so start with less ice and then add more, as needed.
Serve right away for the best taste and texture.
To make this smoothie ahead of time, place all of the ingredients in a sandwich bag except for the water and ice. Store the bag in the fridge for up to a week. When you're ready to have the smoothie, dump the contents of the bag into the blender, then add water and blend until smooth. Add ice as directed above, and blend again. Serve right away.