In a large mixing bowl, whisk together the flour, baking powder, sugar, and salt until well combined.
In a separate bowl, whisk the buttermilk, egg, melted butter, and vanilla until smooth.
Pour the wet ingredients into the dry ingredients. Stir gently with a spatula until just combined. The batter should be slightly lumpy—do not overmix.
Heat a nonstick skillet or griddle over medium heat and lightly grease with butter.
Scoop about ¼ cup of batter for each pancake onto the hot surface. If using blueberries or chocolate chips, sprinkle them on top of the batter now.
Cook until bubbles form on the surface and the edges look set, about 2–3 minutes. Flip carefully and cook another 1–2 minutes until golden brown and cooked through.
Transfer pancakes to a plate and keep warm while repeating with the remaining batter. Serve hot with butter, syrup, or your favorite toppings.