I start by peeling my russet potatoes and cutting them into roughly even 1 to 1.5-inch cubes. Keeping the sizes consistent matters here, since uneven pieces cook unevenly and you'll end up with some chunks still firm while others turn mushy. I give them a quick rinse to remove excess starch before they go in.
Next, I place the cubed potatoes straight into my 6-quart slow cooker and pour the chicken broth right over the top. I scatter half of the cubed butter around the potatoes at this stage so it melts in slowly as everything cooks. This base is really what builds the flavor foundation for the whole dish.
I cover the crockpot and set it to high for 4 to 5 hours, or low for 7 to 8 hours if I'm planning ahead. You'll know the potatoes are ready when a fork slides through them with almost no resistance. I usually give mine a gentle stir around the halfway mark just to help things cook evenly.
Once the potatoes are fork-tender, I don't drain them since the remaining broth adds flavor and moisture. I take my potato masher right into the crockpot and mash everything to my preferred consistency, leaving a few small chunks for texture since I like it a little rustic.
This is where the magic happens. I fold in the softened cream cheese, sour cream, remaining butter, garlic powder, salt, and pepper directly into the warm potatoes. The residual heat melts everything together beautifully, and I stir until it's smooth and glossy.
If the mixture feels too thick, I slowly pour in the warm milk a little at a time until it reaches the consistency I want. I give it one final taste test and adjust the salt and pepper if needed before switching the crockpot to the warm setting for serving.