Preheat your oven to 350°F (175°C).
Heat the olive oil in a large skillet over medium heat. Add the chopped onion and minced garlic and sauté until the onion becomes translucent, about 3-4 minutes.
Stir in the chopped artichoke hearts and thawed spinach, cooking for an additional 2-3 minutes.
In a mixing bowl, combine the softened cream cheese, sour cream, mayonnaise, shredded mozzarella cheese, grated Parmesan cheese, garlic powder, onion powder, red pepper flakes (if using), salt, and black pepper. Mix well until all the ingredients are thoroughly combined.
Add the cream cheese mixture to the skillet with the sautéed vegetables. Stir everything together until well blended and heated through.
Transfer the skillet to the preheated oven and bake for about 15-20 minutes, or until the top is golden and bubbly.
Remove from the oven and let it cool for a few minutes before serving.
Serve the skillet spinach artichoke dip hot with bread slices, tortilla chips or vegetable sticks for dipping. Enjoy!