Prepare the potatoes: Peel (if desired) and cut potatoes into roughly 1 1/2-inch cubes so they cook evenly. Put them in a large pot and cover with cold water by an inch to ensure even cooking.
Season and boil: Add a generous pinch of kosher salt to the water. Bring to a boil over high heat, then reduce to a simmer. Cook until the potatoes are fork-tender, about 12–15 minutes depending on size.
Cook the bacon: While the potatoes cook, fry the bacon in a skillet over medium heat until crisp. Transfer to a paper towel-lined plate to drain, then chop or crumble. Reserve 1 tablespoon of the bacon fat if you like a richer flavor.
Warm the dairy: In a small saucepan or microwave-safe bowl, gently warm the milk with the butter until the butter melts. Warming prevents the mash from cooling down and helps the liquids incorporate smoothly.
Drain and dry the potatoes: Once tender, drain the potatoes well in a colander, then return them to the hot pot for a minute over low heat. Shake the pot gently to evaporate excess moisture — this yields fluffier mash.
Mash and mix: Mash the potatoes using a ricer for the smoothest texture or a potato masher for a chunkier finish. Add the warmed milk and butter mixture, then fold in sour cream until everything is silky.
Build the loaded flavor: Stir in most of the shredded cheddar (reserve a little for topping), chopped bacon (reserve some for garnish), sliced green onions, garlic powder (if using), salt and pepper. Taste and adjust seasoning.
Finish and serve: Transfer to a serving dish, sprinkle with remaining cheddar and bacon, and place under a low broiler for 1–2 minutes if you want a bubbly golden top. Garnish with remaining green onions and serve hot.