Prep the pan: Heat the oven to 350°F (175°C). Grease a 9x13-inch baking pan and line with parchment for easy lifting.
Whisk dry ingredients: In a medium bowl, whisk flour, baking powder, baking soda, salt, cinnamon, nutmeg, and ginger.
Mix the wet base: In a large bowl, beat eggs and sugar until slightly thick and pale, about 1–2 minutes.
Add oil, pumpkin puree, and vanilla. Stir until smooth.
Combine: Add the dry ingredients to the wet. Stir gently until just combined. Do not overmix—a few small lumps are fine.
Bake: Pour batter into the pan and smooth the top.
Bake 25–30 minutes, until a toothpick comes out clean or with a few moist crumbs.
Cool completely: Set the pan on a rack and cool fully. Frosting will melt on warm bars, so don’t rush this step.
Make the frosting: In a mixing bowl, beat cream cheese and butter until fluffy and smooth. Add vanilla and salt. Gradually beat in powdered sugar until creamy and spreadable.
Frost and finish: Spread frosting evenly over cooled bars.
For clean slices, chill the pan 20–30 minutes before cutting.