App Supply Index Monitor my app
iOS · Duolingo, Inc

Duolingo: Sprachen und Schach

Developer URL
https://de.duolingo.com
app-ads.txt
https://www.duolingo.com/app-ads.txt · 200
Checked
Oct 7, 2026
B
77/100

567 lines · 336 verified against sellers.json

Findings

Each finding lists the exact lines involved. These are mechanical checks of public files, not fraud verdicts.

warning

DIRECT lines pointing to intermediaries

7 −15 pts

The line says DIRECT, but the ad system lists that account as an INTERMEDIARY. Buyers doing supply path optimization may treat this as misrepresentation.

How to fixUse DIRECT only for accounts your company controls; change the rest to RESELLER.
Evidence (7)
line 21     aps.amazon.com, 4e8fb3b2-1c6c-42d6-890c-e5a6718315a3, DIRECT
             → seller_type=INTERMEDIARY  seller_name=Aditude Inc.
line 63     Media.net, 8CUENMD10, DIRECT
             → seller_type=INTERMEDIARY  seller_name=Aditude, Inc.
line 76     pubmatic.com, 160912, DIRECT, 5d62403b186f2ace
             → seller_type=INTERMEDIARY  seller_name=Aditude
line 79     risecodes.com, 60c8b4e48985e4000198293e, DIRECT
             → seller_type=INTERMEDIARY  seller_name=Aditude
line 90     sharethrough.com, 4582, DIRECT, d53b998a7bd4ecd2
             → seller_type=INTERMEDIARY  seller_name=Aditude
line 91     smartadserver.com, 4582, DIRECT, 060d053dcf45cbf3
             → seller_type=INTERMEDIARY  seller_name=Aditude
line 99     triplelift.com, 14661, DIRECT, 6c33edb13117fd86
             → seller_type=INTERMEDIARY  seller_name=Aditude
warning

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

7 −3 pts

The ad system's current sellers.json doesn't list these accounts, so buyers that validate the chain can't match them. Usually leftovers from closed accounts or old partners.

How to fixAsk each partner whether the account is still active and request their current lines; remove lines for closed accounts.
Evidence (7)
line 11     rubiconproject.com, 28669, DIRECT, 0bfd66d529a55807 #OB
             → sellers_json=https://rubiconproject.com/sellers.json
line 54     adform.com, 3305, RESELLER, 9f5210a2f0999e32
             → sellers_json=https://adform.com/sellers.json
line 60     video.unrulymedia.com, 311396600, RESELLER
             → sellers_json=https://video.unrulymedia.com/sellers.json
line 189    pubmatic.com, 161853, RESELLER, 5d62403b186f2ace
             → sellers_json=https://pubmatic.com/sellers.json
line 552    themediagrid.com,RIX2M5,RESELLER,35d5010d7789b49d
             → sellers_json=https://themediagrid.com/sellers.json
line 594    video.unrulymedia.com,5336134699710583737,RESELLER
             → sellers_json=https://video.unrulymedia.com/sellers.json
line 607    xandr.com,10128,RESELLER,f5ab79cb980f11d1
             → sellers_json=https://xandr.com/sellers.json
info

DIRECT accounts registered to another domain

2 −3 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 (2)
line 40     themediagrid.com, 4R7XKQ, DIRECT, 35d5010d7789b49d
             → seller_domain=aditude.io  seller_name=Aditude Inc
line 69     Xandr.com, 2398, DIRECT
             → seller_domain=aditude.io  seller_name=Hashtag Labs
info

Duplicate lines

58 −2 pts

Harmless but a sign of copy-paste maintenance.

How to fixRemove duplicates; keep one copy of each line.
Evidence (25 of 58)
ad_system: aditude.io  seller_id: 376  relationship: DIRECT
ad_system: adform.com  seller_id: 3119  relationship: RESELLER
ad_system: smartadserver.com  seller_id: 4284  relationship: RESELLER
ad_system: admanmedia.com  seller_id: 990  relationship: RESELLER
ad_system: appnexus.com  seller_id: 12878  relationship: RESELLER
ad_system: appnexus.com  seller_id: 13293  relationship: RESELLER
ad_system: appnexus.com  seller_id: 13297  relationship: RESELLER
ad_system: appnexus.com  seller_id: 15349  relationship: RESELLER
ad_system: appnexus.com  seller_id: 15629  relationship: RESELLER
ad_system: conversantmedia.com  seller_id: 100358  relationship: RESELLER
ad_system: conversantmedia.com  seller_id: 100396  relationship: RESELLER
ad_system: conversantmedia.com  seller_id: 100863  relationship: RESELLER
ad_system: eliteappgrade.com  seller_id: 494223  relationship: RESELLER
ad_system: mars.media  seller_id: 1010442  relationship: RESELLER
ad_system: media.net  seller_id: 8cu12aq1y  relationship: RESELLER
ad_system: openx.com  seller_id: 540679900  relationship: RESELLER
ad_system: openx.com  seller_id: 540838151  relationship: RESELLER
ad_system: openx.com  seller_id: 540857594  relationship: RESELLER
ad_system: openx.com  seller_id: 540866936  relationship: RESELLER
ad_system: openx.com  seller_id: 541031350  relationship: RESELLER
ad_system: pubmatic.com  seller_id: 156520  relationship: RESELLER
ad_system: pubmatic.com  seller_id: 157800  relationship: RESELLER
ad_system: pubmatic.com  seller_id: 158060  relationship: RESELLER
ad_system: pubmatic.com  seller_id: 158154  relationship: RESELLER
ad_system: pubmatic.com  seller_id: 158481  relationship: RESELLER

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