App Supply Index Monitor my app
iOS · Hulu, LLC

Hulu: Stream TV shows & movies

Developer URL
http://www.hulu.com/start
app-ads.txt
https://www.hulu.com/app-ads.txt · 200
Checked
Oct 7, 2026
C
65/100

308 lines · 171 verified against sellers.json

Findings

Each finding lists the exact lines involved. Findings are automated observations of public files as of Oct 7, 2026. They describe file contents, not the intent or conduct of any company.

warning

DIRECT lines inconsistent with public data

91 −21 pts

The ads.txt specification defines DIRECT as an account the publisher directly controls. For these lines, either the ad system's own sellers.json lists the account as INTERMEDIARY, or the same account is marked DIRECT in the files of 3 or more unrelated companies. Either way, the public data does not support the DIRECT label. Buyers that use DIRECT labels in supply-path decisions may treat these lines differently.

How to fixUse DIRECT only for accounts your company controls. Confirm with each partner whether the account is yours; if it isn't, the specification calls for RESELLER.
Evidence (25 of 91)
line 29     telaria.com, r5rfy-irhqt, DIRECT, 1a4e959a1b50034a
             → observed: the same account is marked DIRECT by 3 different companies
line 30     tremorhub.com, r5rfy-irhqt, DIRECT, 1a4e959a1b50034a
             → observed: the same account is marked DIRECT by 3 different companies
line 36     freewheel.tv, 520311, DIRECT #Paramount
             → observed: the same account is marked DIRECT by 9 different companies
line 37     freewheel.tv, 191701, DIRECT #Discovery
             → observed: the same account is marked DIRECT by 8 different companies
line 38     freewheel.tv, 516429, DIRECT #Fox
             → observed: the same account is marked DIRECT by 8 different companies
line 39     freewheel.tv, 48804, DIRECT #Warner
             → observed: the same account is marked DIRECT by 6 different companies
line 40     freewheel.tv, 171213, DIRECT #A&E
             → observed: the same account is marked DIRECT by 7 different companies
line 41     freewheel.tv, 520040, DIRECT #AMC
             → observed: the same account is marked DIRECT by 4 different companies
line 42     freewheel.tv, 169843, DIRECT #NBCU
             → observed: the same account is marked DIRECT by 4 different companies
line 43     freewheel.tv, 520311-523319, DIRECT #Paramount
             → observed: the same account is marked DIRECT by 4 different companies
line 44     freewheel.tv, 191701-523319, DIRECT #Discovery
             → observed: the same account is marked DIRECT by 3 different companies
line 45     freewheel.tv, 516429-523319, DIRECT #Fox
             → observed: the same account is marked DIRECT by 5 different companies
line 46     freewheel.tv, 48804-523319, DIRECT #Warner
             → observed: the same account is marked DIRECT by 3 different companies
line 48     freewheel.tv, 520040-523319, DIRECT #AMC
             → observed: the same account is marked DIRECT by 4 different companies
line 50     telaria.com, lbhf7-eaa33, DIRECT, 1a4e959a1b50034a
             → observed: the same account is marked DIRECT by 3 different companies  name in sellers.json: Fox  domain in sellers.json: fox.com
line 51     tremorhub.com, lbhf7-eaa33, DIRECT, 1a4e959a1b50034a
             → observed: the same account is marked DIRECT by 3 different companies  name in sellers.json: Fox  domain in sellers.json: fox.com
line 52     indexexchange.com, 201520, DIRECT, 50b1c356f2c5c8fc
             → observed: the same account is marked DIRECT by 8 different companies
line 57     freewheel.tv, 171213, DIRECT
             → observed: the same account is marked DIRECT by 7 different companies
line 93     yahoo.com, 59494, DIRECT, e1a5b5b6e3255540
             → observed: the same account is marked DIRECT by 4 different companies
line 98     freewheel.tv, 372496, DIRECT
             → observed: the same account is marked DIRECT by 5 different companies
line 103    springserve.com, 1247, DIRECT, a24eb641fc82e93d
             → observed: the same account is marked DIRECT by 20 different companies
line 104    telaria.com, 2auap-45web, DIRECT, 1a4e959a1b50034a
             → observed: sellers.json lists the account as INTERMEDIARY; the same account is marked DIRECT by 3 different companies  name in sellers.json: LG Ads - US  domain in sellers.json: lgads.tv
line 105    telaria.com, 2auap-zihku, DIRECT, 1a4e959a1b50034a
             → observed: the same account is marked DIRECT by 11 different companies  name in sellers.json: LG Ads - US  domain in sellers.json: lgads.tv
line 106    tremorhub.com, 2auap-45web, DIRECT, 1a4e959a1b50034a
             → observed: sellers.json lists the account as INTERMEDIARY; the same account is marked DIRECT by 3 different companies  name in sellers.json: LG Ads - US  domain in sellers.json: lgads.tv
line 107    tremorhub.com, 2auap-zihku, DIRECT, 1a4e959a1b50034a
             → observed: the same account is marked DIRECT by 11 different companies  name in sellers.json: LG Ads - US  domain in sellers.json: lgads.tv
warning

Seller IDs not listed in the ad system's sellers.json

24 −11 pts

The ad system's current sellers.json doesn't list these accounts, so buyers that validate the chain can't match them. Common causes are closed accounts or former partners.

How to fixAsk each partner whether the account is still active and request their current lines; remove lines for closed accounts.
Evidence (24)
line 27     telaria.com, i0unc-ertdk, DIRECT, 1a4e959a1b50034a
             → sellers_json: https://www.telaria.com/sellers.json
line 28     tremorhub.com, i0unc-ertdk, DIRECT, 1a4e959a1b50034a
             → sellers_json: https://tremorhub.com/sellers.json
line 29     telaria.com, r5rfy-irhqt, DIRECT, 1a4e959a1b50034a
             → sellers_json: https://www.telaria.com/sellers.json
line 30     tremorhub.com, r5rfy-irhqt, DIRECT, 1a4e959a1b50034a
             → sellers_json: https://tremorhub.com/sellers.json
line 31     telaria.com, sipgi-k8fpb, DIRECT, 1a4e959a1b50034a
             → sellers_json: https://www.telaria.com/sellers.json
line 32     tremorhub.com, sipgi-k8fpb, DIRECT, 1a4e959a1b50034a
             → sellers_json: https://tremorhub.com/sellers.json
line 89     telaria.com, r288m-d4psn, DIRECT, 1a4e959a1b50034a
             → sellers_json: https://www.telaria.com/sellers.json
line 91     tremorhub.com, r288m-d4psn, DIRECT, 1a4e959a1b50034a
             → sellers_json: https://tremorhub.com/sellers.json
line 121    telaria.com, r288m-d4psn, RESELLER, 1a4e959a1b50034a
             → sellers_json: https://www.telaria.com/sellers.json
line 122    tremorhub.com, r288m-d4psn, RESELLER, 1a4e959a1b50034a
             → sellers_json: https://tremorhub.com/sellers.json
line 144    beachfront.com, 14589, RESELLER, e2541279e8e2ca4d
             → sellers_json: https://beachfront.com/sellers.json
line 148    filmzie.com, 1206, RESELLER
             → sellers_json: https://filmzie.com/sellers.json
line 196    smartadserver.com, 4071, RESELLER
             → sellers_json: https://smartadserver.com/sellers.json
line 197    smartadserver.com, 4228, RESELLER
             → sellers_json: https://smartadserver.com/sellers.json
line 205    telaria.com, oyz9, RESELLER, 1a4e959a1b50034a
             → sellers_json: https://www.telaria.com/sellers.json
line 219    video.unrulymedia.com, 2564526802, RESELLER
             → sellers_json: https://video.unrulymedia.com/sellers.json
line 220    video.unrulymedia.com, 567009000, RESELLER
             → sellers_json: https://video.unrulymedia.com/sellers.json
line 230    elementaltv.io, 78888114, DIRECT
             → sellers_json: https://elementaltv.io/sellers.json
line 258    telaria.com, i0unc-04ryg, DIRECT, 1a4e959a1b50034a #Magnite
             → sellers_json: https://www.telaria.com/sellers.json
line 259    tremorhub.com, i0unc-04ryg, DIRECT, 1a4e959a1b50034a #MagniteFOX
             → sellers_json: https://tremorhub.com/sellers.json
line 268    smaato.com, 1100054264, DIRECT, 07bcf65f187117b4 #LG
             → sellers_json: https://smaato.com/sellers.json
line 283    smaato.com, 1100054264, DIRECT, 07bcf65f187117b4
             → sellers_json: https://smaato.com/sellers.json
line 289    disney.com, hulu-d7b824ab-6098-4d7e-aa45-f47b2017a09f, DIRECT
             → sellers_json: https://disney.com/sellers.json
line 331    vizio.com, 0001043, DIRECT
             → sellers_json: https://vizio.com/sellers.json
info

DIRECT accounts registered to another domain

20 −2 pts

Allowed when the domain belongs to the same company; add OWNERDOMAIN to make that explicit. Otherwise these accounts may belong to someone else.

How to fixIf the account is yours under another domain, declare it with OWNERDOMAIN=<that domain>; otherwise mark it RESELLER.
Evidence (20)
line 56     aps.amazon.com, 3b06d393-7564-44e3-a887-d0dfee9fb68d, DIRECT
             → domain in sellers.json: aetv.com  name in sellers.json: A+E Television Networks, LLC
line 85     video.unrulymedia.com, 1039922603, DIRECT
             → domain in sellers.json: aetv.com  name in sellers.json: A&E Television Networks, LLC
line 86     lkqd.net, 550, DIRECT, 59c49fa9598a0117
             → domain in sellers.json: aetv.com  name in sellers.json: A&E
line 88     telaria.com, 45dhn, DIRECT, 1a4e959a1b50034a
             → domain in sellers.json: aetv.com  name in sellers.json: A&E
line 90     tremorhub.com, 45dhn, DIRECT, 1a4e959a1b50034a
             → domain in sellers.json: aetv.com  name in sellers.json: A&E
line 94     pubmatic.com, 161451, DIRECT, 5d62403b186f2ace
             → domain in sellers.json: aetv.com  name in sellers.json: A&E Networks
line 96     telaria.com, dix75-v06nl, DIRECT, 1a4e959a1b50034a
             → domain in sellers.json: directv.com  name in sellers.json: DIRECTV
line 97     tremorhub.com, dix75-v06nl, DIRECT, 1a4e959a1b50034a
             → domain in sellers.json: directv.com  name in sellers.json: DIRECTV
line 100    telaria.com, r288m-l2d21, DIRECT, 1a4e959a1b50034a
             → domain in sellers.json: aetv.com  name in sellers.json: A&E -  FAST
line 101    tremorhub.com, r288m-l2d21, DIRECT, 1a4e959a1b50034a
             → domain in sellers.json: aetv.com  name in sellers.json: A&E -  FAST
line 102    pubmatic.com, 160741, DIRECT, 5d62403b186f2ace
             → domain in sellers.json: aetv.com  name in sellers.json: AE Networks
line 116    glewed.tv, 127, DIRECT, 3cc5a0825f527a1e
             → domain in sellers.json: aetv.com  name in sellers.json: A&E Networks
line 126    applovin.com, 51877, DIRECT
             → domain in sellers.json: aetv.com  name in sellers.json: A+E Television Networks
line 228    orka.tv, 57590797, DIRECT
             → domain in sellers.json: aetv.com  name in sellers.json: A&E Networks
line 238    video.unrulymedia.com, 505579786, DIRECT
             → domain in sellers.json: fox.com  name in sellers.json: Foxcorp Holdings (OneFox)
line 260    telaria.com, lbhf7-z8p3a, DIRECT, 1a4e959a1b50034a #MagniteOneFOX
             → domain in sellers.json: fox.com  name in sellers.json: Fox
line 276    telaria.com, lbhf7-z8p3a, DIRECT, 1a4e959a1b50034a
             → domain in sellers.json: fox.com  name in sellers.json: Fox
line 293    smartadserver.com, 4915, DIRECT, 060d053dcf45cbf3
             → domain in sellers.json: fox.com  name in sellers.json: Fox Sports Ent
line 322    telaria.com, 2auap-y09j8, DIRECT, 1a4e959a1b50034a
             → domain in sellers.json: fox.com  name in sellers.json: OneFox
line 323    tremorhub.com, 2auap-y09j8, DIRECT, 1a4e959a1b50034a
             → domain in sellers.json: fox.com  name in sellers.json: OneFox
info

Duplicate lines

18 −1 pts

Harmless but a sign of copy-paste maintenance.

How to fixRemove duplicates; keep one copy of each line.
Evidence (18)
ad_system: freewheel.tv  seller_id: 171213  relationship: DIRECT
ad_system: freewheel.tv  seller_id: 516429-523319  relationship: DIRECT
ad_system: indexexchange.com  seller_id: 201520  relationship: DIRECT
ad_system: pubmatic.com  seller_id: 161508  relationship: RESELLER
ad_system: smartadserver.com  seller_id: 4311  relationship: RESELLER
ad_system: undertone.com  seller_id: 4143  relationship: RESELLER
ad_system: indexexchange.com  seller_id: 206103  relationship: DIRECT
ad_system: yahoo.com  seller_id: 57974  relationship: DIRECT
ad_system: yahoo.com  seller_id: 58082  relationship: DIRECT
ad_system: telaria.com  seller_id: lbhf7-z8p3a  relationship: DIRECT
ad_system: indexexchange.com  seller_id: 205045  relationship: DIRECT
ad_system: triplelift.com  seller_id: 13922  relationship: DIRECT
ad_system: freewheel.tv  seller_id: 1572593  relationship: DIRECT
ad_system: freewheel.tv  seller_id: 1572594  relationship: RESELLER
ad_system: yahoo.com  seller_id: 59642  relationship: RESELLER
ad_system: lkqd.net  seller_id: 1100054253  relationship: DIRECT
ad_system: smaato.com  seller_id: 1100054264  relationship: DIRECT
ad_system: openx.com  seller_id: 559105323  relationship: DIRECT
info

Ad systems without a public sellers.json

108

The ad system doesn't publish a readable sellers.json, so nobody can verify these lines. That's the ad system's gap, not the app's, so no points are deducted.

How to fixAsk the partner to publish sellers.json; until then buyers can't verify that path.
Evidence (25 of 108)
line 36     freewheel.tv, 520311, DIRECT #Paramount
             → sellers_json: HTTP 403
line 37     freewheel.tv, 191701, DIRECT #Discovery
             → sellers_json: HTTP 403
line 38     freewheel.tv, 516429, DIRECT #Fox
             → sellers_json: HTTP 403
line 39     freewheel.tv, 48804, DIRECT #Warner
             → sellers_json: HTTP 403
line 40     freewheel.tv, 171213, DIRECT #A&E
             → sellers_json: HTTP 403
line 41     freewheel.tv, 520040, DIRECT #AMC
             → sellers_json: HTTP 403
line 42     freewheel.tv, 169843, DIRECT #NBCU
             → sellers_json: HTTP 403
line 43     freewheel.tv, 520311-523319, DIRECT #Paramount
             → sellers_json: HTTP 403
line 44     freewheel.tv, 191701-523319, DIRECT #Discovery
             → sellers_json: HTTP 403
line 45     freewheel.tv, 516429-523319, DIRECT #Fox
             → sellers_json: HTTP 403
line 46     freewheel.tv, 48804-523319, DIRECT #Warner
             → sellers_json: HTTP 403
line 47     freewheel.tv, 171213-523319, DIRECT #A&E
             → sellers_json: HTTP 403
line 48     freewheel.tv, 520040-523319, DIRECT #AMC
             → sellers_json: HTTP 403
line 49     freewheel.tv, 169843-523319, DIRECT #NBCU
             → sellers_json: HTTP 403
line 53     freewheel.tv, 516429-523319, RESELLER
             → sellers_json: HTTP 403
line 54     advertising.com, 5830, DIRECT
             → sellers_json: HTTP 403
line 55     appnexus.com, 9339, DIRECT, f5ab79cb980f11d1
             → sellers_json: HTTP 403
line 57     freewheel.tv, 171213, DIRECT
             → sellers_json: HTTP 403
line 58     freewheel.tv, 181033, DIRECT
             → sellers_json: HTTP 403
line 59     freewheel.tv, 181041, DIRECT
             → sellers_json: HTTP 403
line 60     freewheel.tv, 181049, DIRECT
             → sellers_json: HTTP 403
line 61     freewheel.tv, 181057, DIRECT
             → sellers_json: HTTP 403
line 62     freewheel.tv, 184449, DIRECT
             → sellers_json: HTTP 403
line 63     freewheel.tv, 188201, DIRECT
             → sellers_json: HTTP 403
line 64     freewheel.tv, 188609, DIRECT
             → sellers_json: HTTP 403

Is this your app?

Get the full evidence list, a cleaned app-ads.txt, and alerts when partners' accounts change. Think something here is wrong? Request a correction.

Monitor this app