An advertiser usually provides a specific demographic target to a content publisher. But due to the limited profile information on each viewer, the publisher suffers from low accuracy in targeting. Once an advertisement is shown to viewers, a third party (like Nielsen, Comscore) validates how close the publisher was to the target audience. Publisher also receives the demographic mix of each show from the third party. Low accuracy in targeting is expensive as the publisher gets paid only for the impressions which were on target. In this work, we propose a new approach to incorporate user level latent features developed from the show-wise demographic mix provided by the third party, along with session level features of viewers to improve the demographic predictions. In congruence with current industry practice, we train our model on a small labeled demographic segment and establish the effectiveness of our approach over existing approaches through experiments.