app-ads.txt

To ensure a transparent, safe and fraud-free in-app ecosystem, Chartboost supports app-ads.txt, a standard released by the IAB to fight inventory fraud for apps. Maintaining an app-ads.txt file is a critical component to both maximizing ad revenue from programmatic buyers and to protecting against unauthorized selling of in-app inventory and app spoofing.


  1. Setup your app-ads.txt file according to the IAB Tech Lab’s Authorized Sellers for Apps specification v1.0
  2. Ensure the Developer URL listed on the Apple App Store & Google Play Store is available and up to date for your publisher apps.
  3. Login to the Chartboost dashboard and navigate to Tools > App-ads.txt
  4. Click “SCAN ALL APPS” to begin the app-ads.txt file scanning & verification process. Scanning is quick and should complete in under a minute.
    Note: Only iOS & Google Play apps are supported for app-ads.txt verification. Refer to Using the Chartboost App-ads.txt Verifier for more details on app eligibility.
  5. Refresh the page to see the verification status for each app.
  6. Review the details and update your app-ads.txt file(s) as needed.
  7. Coming soon: Chartboost’s App-ads.txt Verifier will automatically rescan your apps daily (even new ones, once approved for publishing).

The Chartboost App-ads.txt Verifier is a new tool to help publishers check whether their app-ads.txt files are both discoverable and up to date with all lines required to maximize revenue potential on Chartboost.
How it works
  1. Eligible apps are listed on the App-ads.txt Verifier overview page. Apps are considered eligible when they (1) have successfully integrated the Chartboost SDK, (2) are live on the iOS or Google Play Store, and (3) have been approved for publishing.
  2. The Developer URL published in each app’s App Store page is fetched, and the URL where an app-ads.txt file is expected to be found is generated (refer to the IAB specification for more information on exactly where the app-ads.txt file should be hosted).
  3. Users click “SCAN ALL APPS” to begin the verification scanning process.
  4. For each unique app-ads.txt URL, we will attempt to fetch the file and compare its contents against the current list of required lines, including the account-specific chartboost.com,<publisher id>,DIRECT line.
  5. The scan result is stored and displayed on the page once refreshed.
  6. If a file was successfully fetched and scanned, the Status column will indicate if all required lines were found within the file, else how many lines matched out of the total expected.
  7. Clicking a details icon will lead you to the scan details page for the given app. Here you will find an up to date list of the required lines, along with indicators next to each informing the user which lines were found and/or missing.
  8. Clicking the COPY ALL or COPY MISSING ONLY button will copy the respective lines to the clipboard, which can then be pasted directly into your app-ads.txt file for updating.
Status column definitions
Status Description Monetization Impact
#/# Lines Matched App-ads.txt URL was successfully fetched and scanned. This status indicates the number of required lines that were found in the file vs. the number of lines expected. Varies Buyers will not bid on your traffic if their lines are not found in your app-ads.txt file. The impact will depend on multiple factors, but generally the more lines that are missing, the greater the revenue impact.
URL Not Found Developer URL was not found on the app store page for this app. The user should follow the steps in Updating an app’s Developer URL. High Buyers may consider this traffic unauthorized and not bid on this app’s traffic.
File Not Found Developer URL was found on the app store page for this app, however we were unable to find an app-ads.txt file at the root of the domain/subdomain. Check the details page for more information about the error. Reasons may include response timeout, bad SSL certificate, unexpected file type, etc.. The user should ensure their file is hosted in the correct location as outlined in the Authorized Sellers for Apps specification v1.0 High Buyers may consider this traffic unauthorized and not bid on this app’s traffic. The impact will depend on whether this is a transient or persistent issue.
Developer URL Invalid Domain Developer URL was found on the app store page for this app, however the domain is not valid for hosting an app-ads.txt file. Examples of invalid domains commonly seen include “facebook.com”, “github.com”, “twitter.com”, etc.. High Buyers may consider this traffic unauthorized and not bid on this app’s traffic.
Internal Error Try again, if error persists please reach out to Support. N/A

  • If it’s the first time you’re adding Chartboost lines to your app-ads.txt file:
    • After completing a scan, click on the details icon next to any of your apps – the Status does not matter in this instance. Click the “COPY ALL” button. You can then paste these lines directly into your app-ads.txt file.
  • If you already have some required lines present and are updating your app-ads.txt file to bring it up to date:
    • After completing a scan, click on the details icon next to an app with the N/N Lines Matched status. Click the “COPY MISSING ONLY” button. You can then paste these lines directly into your app-ads.txt file.
Note: If you manage publishing apps in multiple Chartboost accounts, be sure to add a distinct chartboost.com,<publisher id>,DIRECT line for each account – in the App-ads.txt Verifier tool, the publisher id is dynamically populated on this page for the account you’re currently logged into (you can also find the publisher id on the API Explorer page, listed as “User ID”). All other lines are identical for any account on the platform.

It is important to ensure the Developer URL listed for all of your apps is both available on the app store page(s) and is kept up to date – this is the URL both Chartboost and our demand partners use to locate an app-ads.txt file and verify seller authorization. Tips:
  • Developer URLs must be hosted on domains/subdomains managed by the publisher. Examples of invalid domains include Facebook/Twitter links, Github Pages, YouTube Channels, etc..
  • If you discover changes need to be made to the Developer URL listed on the app store(s), please note it may take several days before changes are reflected on the app store page and within Chartboost.
Apple App Store
  • The Marketing URL field within an app’s App Store Connect page is the “Developer Website” link published on the app’s App Store landing page. This is the domain that will be used to find your app-ads.txt file.
  • Updating an app’s Marketing URL in the Apple App Store is only possible by publishing & submitting a new version via App Store Connect.
  • It is strongly recommended to check that the Marketing URL field is up to date each time you release a new version of your app to the store.
Google Play Store
  • The “Visit website” link on an app’s landing page in the Google Play Store is managed within the Google Play Store Console:
    • Navigate to the “Store settings” page (Grow > Store presence > Store settings)
    • Scroll down to “Store listing contact details.”
    • Add or update your website

The URL that appears for a given app is wrong. What should I do?
  1. Check that the iTunes ID (iOS) or Google Play Store ID (Android) is correct on the app’s App Settings page. If it is not, reach out to Support for help updating it to the correct id.
  2. Check that your Developer URL is up to date on the app’s store page. If it is not, follow the steps in the section above, Updating an app’s Developer URL.
  3. Check that your file is hosted in the correct location – refer to the specification for details.
  4. If steps 1-3 appear correct, please reach out to Support with the app id(s) and the expected URL so we can investigate this further.
How long will it take for changes I’ve made to my app-ads.txt file to be reflected in the App-ads.txt Verifier’s scan results?
If new lines are added to an existing app-ads.txt file, these changes should generally be reflected immediately, upon next scan. However, this can depend on cache policies that may be in place, for example if the file is served by a CDN. Ask your webmaster if the CDN cache expiration policy on the app-ads.txt file can be set to one hour or less.
How long will it take for changes I’ve made to my Developer URL to be reflected in the App-ads.txt Verifier’s scan results
This depends primarily on the app store, but may take several days to be reflected. Once the new URL appears live on the app store, allow 24-48 hours for it to be reflected in Chartboost as well. If after this time it still appears out of date, please reach out to us.
Can I host my app-ads.txt file on a free hosting provider such as GitHub Pages?
No. Publishers must manage the domain of the Developer URL, as app-ads.txt is expected to be at the root of it (i.e. if your Developer URL is hosted on developer.github.io, then the app-ads.txt URL buyers and Chartboost will use is https://developer.github.io/app-ads.txt, which is invalid).
How can I find my publisher id?
Simply go to the scan details for any app in your account – your publisher id can be found on the first line chartboost.com, <publisher id>, DIRECT.
Do I need to add all lines multiple times if I have multiple accounts with Chartboost?
You need to add a chartboost.com, <publisher id>, DIRECT line for each account you monetize apps with. Every other line in the app-ads.txt scan details is identical for all accounts across the platform except for the first line, chartboost.com, <publisher id>, DIRECT, so if you have multiple accounts, make sure you log in to each one and add this line to your app-ads.txt file(s) for each.
Are there any best practices Chartboost recommends when it comes to managing my app-ads.txt file?
Creating sections in the app-ads.txt file, denoted by a comment line (lines prefixed by a # character) with the name of the ad network / partner the lines come from, with each section separated by an empty line & line-break, makes finding/replacing/updating lines for each network a lot easier. Example:

# Chartboost
<line1>
<line2>
etc.


# Another Ad Network
<line1>
<line2>
etc.


Last Updated on May 18, 2022