Most India CTV runs on Android TV smart TVs, which use the GAID (Google Advertising ID) as their device identifier for ad targeting and frequency capping. In programmatic, this GAID is passed as the IFA (Identifier For Advertisers) in the OpenRTB device object. It is a household-level ID: everyone who watches the same Android TV shares the same GAID. It is not a personal identifier tied to an individual user account.
Other India CTV platforms use different IFA types: Amazon Fire TV Stick uses AFAI, Samsung Tizen uses TIFA, LG webOS uses LGUDID. DSPs that support cross-platform frequency capping need to handle all of these ID types — TTD has broader cross-platform IFA support than DV360, which is optimised for Google's GAID ecosystem.
Why is device ID availability on CTV lower than mobile?
India CTV impressions carry a usable device ID approximately 60–75% of the time — lower than Android mobile (~95%). The gap comes from: budget smart TVs configured without a Google account (GAID requires account sign-in on Android TV), older firmware on low-cost devices with buggy GAID APIs, and sideloaded OTT apps that bypass the standard GAID access path. When no GAID is available, the DSP uses IP address for household identification — less precise but still functional on fixed broadband.
How does a CTV device ID affect frequency capping?
A frequency cap on CTV is set at the device (household) level — everyone watching the same TV shares the cap. A cap of 3 per device on a 4-person household = 3 ad exposures shared across 4 people, not 3 each. For campaigns targeting high-co-viewing content (IPL, Hindi GEC), set device-level frequency caps lower than you would for individual mobile campaigns. Divide your target per-person frequency by the estimated co-viewing multiplier (2–4× for India) to get the right device-level cap.