Heat oil in a skillet over low heat; stir in onion. Cook and stir until onion is soft but not browned, 20 to 30 minutes. Increase heat to high, add butter, and sprinkle sugar over onions. Cook and stir frequently until onion is very tender and dark brown, 8 to 10 minutes more. Remove from heat and cool to room temperature.
Combine sour cream, yogurt, and mayonnaise together in a bowl; season with salt and black pepper. Mince cooled onions on a cutting board; stir onions into sour cream mixture. Store in refrigerator to allow flavors to blend, at least 1 hour.