Dice the onions or slice thinly. Add the butter and olive oil to a large skillet over medium heat. Once the butter is melted, add the onions and a couple pinches of salt. Cook on medium heat until the onions start to become opaque, 4 to 6 minutes.
Lower the heat to low so that the oil gently boils around the onions. Stir occasionally. The onions will slowly begin to turn a light brown color. If they begin to char, lower the heat. Once the caramelization starts, stir more frequently until the onions are a medium brown color, 30 to 45 minutes. Remove from the heat and keep warm.
While the onions are cooking, peel and cut the potatoes into approximately 1 inch pieces. Place in a saucepan and add water to 1 inch above the potatoes. Place on the stove on high. Once boiling, cook for 12 to 15 minutes until fork tender. Drain and reserve 1 cup of the water.
Mash the potatoes using the reserved water until creamy. Add the onions and blend in until fully incorporated. Taste and add salt as desired. Serve hot.