Pre-heat oven to 350 degrees and lightly grease 6 5" mini cast iron skillets or an 8x8 baking dish.
Add olive oil to a large skillet over medium heat. When hot, add onion and cook until onions are softened and turning golden, about 6 minutes. Add garlic and cook for another minute, until fragrant. Move onion and garlic to a large mixing bowl and set aside.
Add half the spinach to the skillet and cook for about 4 minutes, until it's completely wilted. Add remaining spinach to skillet and continue cooking until it's all wilted as well, another 3-4 minutes.
Transfer cooked spinach to a strainer and pressing down on it with a wooden spoon, remove as much excess water as possible. Add to bowl with onion and garlic.
Add cream cheese, sour cream, mozzarella cheese, blue cheese, bacon, pepper, red pepper flakes, and salt to bowl. Mix everything together until well combined. Spoon mixture into prepared skillets or baking dish.
If using 5" skillets, bake dip for 10-12 minutes, until heated through and turning golden. If using an 8x8 baking dish, bake for 20-22 minutes, until heated through and turning golden. If you want dip to get even more golden, place under broiler for about 2 minutes.
Serve with tortilla chips, crackers, or the dippers of your choice!