Overview

Domain and App targeting can be used to target domains, app bundle IDs (for Android), app IDs (for iOS), subdomains, subdirectories, specific pages, and keywords that appear in page URLs/app bundle IDs. This page provides detailed information about match types, format validation, setting up Domain and App targeting in the UI, and how to address failed entries.

Match types

There are three match types of domain and app targeting:

Broad match

This is the most flexible match type because it matches all URLs/app bundles that contain the strings specified in deal targeting. Broad Match matches the URLs and app bundle IDs that contain a set of characters you specify for targeting. This set of characters is called a substring. Broad Match is ideal for targeting entire sites, apps or keywords that appear in page URLs/app bundle IDs. Some key points to know about Broad Match:

  • You can enter or upload one or a list of substrings.
  • The relationship among each entry is OR.
  • Broad Match ignores URL protocols (http, https, www) and trailing slashes that appears at the end of a URL.
  • For Android apps, we use app bundle IDs for targeting; for iOS apps, we use app IDs for targeting, and you must enter the exact app IDs in order to target them.
  • If a page URL/app bundle ID contains one of the substrings you specify, regardless where this substring is present in the page URL or app bundle ID, the page URL or app bundle ID will match with the targeting.
  • Unlike Exact Match and Simple Match, the substrings do not have to be a domain or app bundle ID. A substring can be a word, a subdirectory, or partial URL.

Examples of Broad match targeting

Example 1:

If a Deal is targeted to: example.com

Sample results:
http://www.example.com - match
https://www.example.com - match
https://www.example.com?query=true - match
https://www.example.com/news - match
http://blog.example.com - match
com.example.app - no match

Example 2:

If a Deal is targeted to: blog.example.com

Sample results:
https://blog.example.com - match
https://blog.example.com/sports - match
https://www.example.com - no match
http://sports.example.com - no match

Example 3:

If a Deal is targeted to: example.com/news

Sample results:
https://example.com/news - match
https://blog.example.com/news - match
https://example.com/news/sports - match
https://blog.example.com/sports - no match
https://www.example.com - no match
http://sports.example.com - no match

Example 4:

If a Deal is targeted to: lifestyle

Sample results:
https://www.example.com/lifestyle -match
http://example.com/lifestyle/scarves - match
https://blog.example.com/lifestyle - match
http://lifestyle.example.com – match
com.example.lifestyle – match

Example 5:

If a Deal is targeted to: com.example.news

Sample results:
com.example.news – match
com.example.sports – no match


Simple match

This match type looks for the URLs, app bundle IDs or app IDs you specify in deal targeting. The traffic must be from the exact pages, apps specified but this match type ignores query parameters, hash or anchor tags, protocol and trailing slashes, and WWW in the URL because adding query or hash parameters doesn’t generally change the pages. It's ideal for targeting single pages. Some key points to know about Simple Match targeting:

  • For Android apps, we use app bundle IDs for targeting; for iOS apps, we use app IDs for targeting, and you must enter the exact app IDs in order to target them.
  • You can enter or upload one or a list of full URLs or app bundle IDs or app IDs.
  • The relationship among each entry is OR.
  • Simple Match ignores URL protocols (http, https, www) and trailing slashes that appears at the end of a URL.
  • If a page URL, app bundle ID or app ID is the same as one of the URLs or app bundle IDs or app IDs you specify, it will match with the targeting.
  • It also doesn't ignore subdomain, extensions (.html, etc.), or subdirectories.
  • You must enter a full URL or app bundle ID, not a relative URL or a word like “/news/about.html” or “lifestyle”. 

Examples of Simple match targeting

Example 1:

If a Deal is targeted to: example.com

Sample results:
https://www.example.com?query=true - match
http://www.example.com/#pages - match
http://www.example.com - match
https://www.example.com - match
https://www.example.com/ - match
http://example.com - match

Example 2:

If a Deal is targeted to: com.example.news

Sample results:
com.example.news - match
com.example.sports – no match

Example 3:

If a Deal is targeted to: weather.example.com

Sample results:
https://example.com/weather - no match
https://weather.example.com/about - no match
http://news.weather.example.com – no match
http://weather.example.com/index.html - no match


Exact Match

This match type looks only for URLs, app bundle IDs, or app IDs that are exactly what you specify in deal targeting. Some key points to know about Exact Match targeting:

  • For Android apps, we use app bundle IDs for targeting; for iOS apps, we use app IDs for targeting, and you must enter the exact app IDs in order to target them.
  • Like simple match, exact match ignores URL protocols (http, https, www) and trailing slashes at the end of URLs. 
  • Where exact match differs from Simple Match is it doesn't ignore query or hash parameters in the URLs.
  • Like Simple Match, it also doesn't ignore subdomain, extensions (.html, etc.), or subdirectories.
  • This match type is ideal for targeting single pages when adding query or hash parameters will significantly change page displays.

Examples of Exact match targeting

Example 1:

If a Deal is targeted to: example.com

Sample results:
http://www.example.com - match
https://www.example.com – match
http://example.com – match
http://exmaple.com/ - match
https://www.example.com?query=true - no match
http://www.example.com/#pages – no match
https://www.example.com/news - no match
https://www.example.com/news/ - no match
http://blog.example.com - no match

Example 2:

If a Deal is targeted to: com.example.weather, www.weather.example.com

Sample results:
com.example.news – no match
com.example.weather – match
https://example.com/weather - no match
https://www.weather.example.com – match
http://weather.example.com – match

  • For Android, enter app bundle ID. For example: com.nytimes.android
  • For IOS, enter app ID. For example, 915056765


Format validation

The PubMatic system performs a format validation check of all entries to ensure the formatting is compatible. Here is what the format validation looks for:

Additional validations

After the deal is created, additional validations will be performed. See below for PMP- and Auction Package-specific details.

PMP-specific

After the deal is created, two checks will run:

1) Items blocklisted by the DSPs.

2) Items not allowlisted.

Go to the Deal Management page to view the results of the two additional validations. If any domains/apps fail, a red flag will appear next to the deal name. Hover over the flag to view the failed items. 


Failed Domains/Apps

The domains/apps that have passed validation in this deal are working properly. However, domains/apps can fail for these reasons:

To correct the failed domains/apps, click the refresh button (see above screenshot) and then download the failed domains/apps file. Fix the invalid formats, allowlist the missing items, and contact your PubMatic Account Manager about the ones blocked by DSPs. Then upload the revised file by editing the deal.

Auction Package-specific 

After the deal is created, two checks will run:

1) Items blocklisted by the DSPs

2) Items blocklisted by PubMatic.

In the Media Console UI, go to the Deals listing page to view the results of the two additional validations. If any domains/apps fail, a red flag will appear next to the deal name. Hover over the flag to view the failed items.

Failed Domains/Apps

The domains/apps that have passed validation in this deal are working properly. However, domains/apps can fail for these reasons:

To correct the failed domains/apps, click the refresh button above and then download the failed domains/apps file. Fix the invalid formats, and contact your PubMatic Account Manager about the ones blocked by the DSPs or PubMatic. Then upload the revised file by editing the deal.

Set up domain and app targeting in the UI

1. Select the Match Type from the list. See Domain and App Targeting#Match types for a detailed description of each.

2. You can choose to manually input your targeting strings or you can do a bulk upload. Click the tabs below to read the instructions for each:

Manual Input is ideal if you have only a small number of targeting strings.

Bulk Upload is idea for a larger number of targeting strings.



This method is ideal if you only have a small number of targeting strings to enter. If you have a large number, bulk upload is the preferred method.

  1. Select Manual Input.
  2. Enter the targeting strings in the box. Each entry must be separated by a comma or line break.

    • Prefixes (http, https, www) are allowed but not required
    • Only these values are allowed: letters, numbers, hyphens, dot (.), comma (,), underscore (_), and forward slash (/)
    • For Android, enter app bundle ID. For example, com.nytimes.android
    • For IOS, enter app ID. For example, 915056765


  3. Click Validate and Add when you're done.
  4. When the format validation check is complete, a message will be displayed with the results.

    If all the targeting strings passed the format validation:
    The included entries will be displayed in the panel on the right (see below). Your domain and app targeting setup is complete.

    If you would like to review the list of stings targeted, click Download all (9) in the panel on the right.

    If some/all of the targeting strings failed the format validation:

    The passed entries will be displayed in the panel on the right, and failed entries will be displayed in red in the Manual Input box. You can choose to fix the failed entries, or click the grey X to delete them. Note that if you delete them they will not be included in this deal. Once you've fixed or deleted the invalid formats your domain and app targeting set up is complete. 


This method is idea for when you have a large number of targeting strings to enter. 

  1. Select Bulk Upload.
  2. Click Download Template and save the file to your computer.  

    • Prefixes (http, https, www) are allowed but not required
    • Only these values are allowed: letters, numbers, hyphens, dot (.), comma (,), underscore (_), and forward slash (/)
    • For Android, enter app bundle ID. For example, com.nytimes.android
    • For IOS, enter app ID. For example, 915056765


  3. Enter your targeting strings, one per line.
  4. When you're ready, click Select File > choose your file > click Validate
  5. When the format validation check is complete, a message will be displayed with the results:

    If all the entries passed the format validation:

    Click Include Passed Domains (9 only). (note that the number in the parenthesis depends on how many targeting strings you have entered/uploaded, in our example we've uploaded 9). 

    If some/all of the entries failed the format validation:

    You can choose to include only the ones passed OR download and fix the file. 

    If you select Include Passed Domains (8 only), your Domain and App Targeting setup is complete. Note that the failed entry will not be included in this deal.

    If you select Download and Fix File, the downloaded CSV file will have a reason column (see second screenshot below).

  6. Fix the failed entries and follow the instructions above to upload the file again.
  7. Once all the targeting strings pass the format validation, your Included Domains / Apps will be listed in the panel on the right (see below). Your domain and app targeting setup is complete. 

    If you would like to review the list of strings targeted, click Download all (9) in the panel on the right.