2008 Chevrolet Uplander blows lukewarm air

Have a 08 Chevy up lander in the winter time the heater blows out luk warm air and has a hard time heating up when sitting at idle Un less you throttle up to 1000 rpm. But when in motion heater starts making heat what causes this and how can I fix it

It sounds like your engine may not get to it’s proper temperature until you are under load when it’s cold. If your coolant level in the radiator is ok, then I’m not sure if there is much you can do (how cold do your winters get?)

How long are you letting it idle. Even in warm weather an engine may take ten minutes DRIVING time to get fully warmed up.
Don’t put the heat on until the temperature gauge starts moving, turning the heat on immediately after starting increases the time required to get the engine warmed up.