01 - Heat butter and olive oil in a large skillet over medium heat. Add sliced onions, salt, and sugar. Cook, stirring occasionally, until onions are golden and deeply caramelized, about 20 minutes. Stir in balsamic vinegar, if using, and cook 1 more minute. Set aside.
02 - Gently mix ground beef with salt, pepper, and garlic powder in a bowl. Divide into 4 equal portions and shape into patties slightly larger than the buns. Make a shallow indentation in the center of each patty to prevent puffing during cooking.
03 - Preheat a grill or skillet over medium-high heat. Cook patties for 3-4 minutes per side for medium doneness, flipping once. Place a slice of Swiss cheese on each patty during the last minute and cover to melt.
04 - Lightly toast the buns on the grill or in a toaster until golden brown.
05 - Spread mayonnaise on the bottom buns if using. Layer lettuce, tomato, then the beef patty with melted Swiss cheese. Top with caramelized onions and pickles if desired. Cover with top bun.
06 - Serve immediately with your favorite sides.