[null,null,["最后更新时间 (UTC):2024-11-23。"],[[["\u003cp\u003eKey-values offer granular ad targeting beyond ad units, enhancing ad relevance by enabling specific criteria like age or interests for ad delivery.\u003c/p\u003e\n"],["\u003cp\u003eSlot-level targeting allows customization for individual ad slots, while page-level targeting applies to all slots on a page, streamlining setup when uniform targeting is desired.\u003c/p\u003e\n"],["\u003cp\u003eCombining slot- and page-level targeting creates layered targeting, where ads must satisfy all criteria to be eligible for serving, enhancing ad precision.\u003c/p\u003e\n"],["\u003cp\u003eGoogle Ad Manager has functions for clearing targeting, such as \u003ccode\u003eclearTargeting()\u003c/code\u003e, which allows removal of specific keys or all targeting at a particular level, providing flexibility in dynamic ad scenarios.\u003c/p\u003e\n"]]],["Key-values refine ad targeting at the slot or page level. Slot-level targeting uses `Slot.setTargeting()` for individual ad slots. Page-level targeting, using `googletag.pubads().setTargeting()`, applies to all slots. Both can be combined, with slot-level values taking precedence. Multiple values for one key are set using an array. To remove key-values use `Slot.clearTargeting()` or `googletag.pubads().clearTargeting()`. Remember, page-level key values can be modified but not removed at the slot level.\n"],null,["# Key-value targeting\n\nKey-values can be used to target ads more granularly than ad units. Learn more\nabout [key-values](//support.google.com/admanager/answer/188092).\n| **Warning:** Use key-value targeting with care. Under the terms of your contract, you must not pass any data that Google Ad Manager could [use or recognize as\n| personally identifiable information](//support.google.com/admanager/answer/7686480).\n\nFor each ad request, you may pass one or more keys, each with one or more\nassociated values. These key-values will be evaluated against targeting options\nconfigured at the line item-level in Ad Manager. For example, if\nyou pass a custom key-value of `age=18-34`, line items targeted to the age range\n18-34 will be eligible to serve, assuming all other criteria matches.\n\nSet targeting\n-------------\n\nYou may specify key-values to configure targeting at both the slot- and\npage-level based on your network's needs.\n\nSlot-level\n\n: Allows you to set key-values for individual ad slots on your page.\n\n Slot-level targeting allows you to configure targeting on a per-slot basis.\n This is useful in cases where individual slots on the same page require\n different targeting, but can be inefficient in situations where the same\n key-values are applied to all slots. Use\n [`slot.setConfig({ targeting: ... })`](/publisher-tag/reference#googletag.config.SlotSettingsConfig.targeting) to utilize\n slot-level targeting, as in the following example.\n\nPage-level\n\n: Allows you to set key-values across all ad slots on your page.\n\n Page-level targeting ensures that all ad slots have the same set of\n key-values. In some cases this may reduce the total amount of code needed to\n configure targeting. Use\n [`googletag.setConfig({ targeting: ... })`](/publisher-tag/reference#googletag.config.PageSettingsConfig.targeting) to\nutilize page-level targeting, as in the following example. \n\n```javascript\nwindow.googletag = window.googletag || { cmd: [] };\n\n// GPT slots\nlet adSlots = [];\n\ngoogletag.cmd.push(() =\u003e {\n // Configure slot-level targeting.\n adSlots[0] = googletag\n .defineSlot(\"/6355419/Travel/Asia\", [728, 90], \"banner-ad-1\")\n .addService(googletag.pubads());\n adSlots[0].setConfig({\n targeting: {\n color: \"red\",\n position: \"atf\",\n },\n });\n\n adSlots[1] = googletag\n .defineSlot(\"/6355419/Travel/Asia\", [728, 90], \"banner-ad-2\")\n .addService(googletag.pubads());\n adSlots[1].setConfig({\n targeting: {\n position: \"btf\",\n },\n });\n\n // Configure page-level targeting and enable SRA.\n googletag.setConfig({\n targeting: {\n interests: \"basketball\",\n },\n singleRequest: true,\n });\n\n // Enable services.\n googletag.enableServices();\n});\n```\n\nIn this example, two ad slots are defined which specify ad unit\n`/6355419/Travel/Asia` and ad size `728x90`. Then key-value targeting is\napplied to further restrict and differentiate the ads which may serve in each\nslot.\n\nWhen both slot- and page-level targeting are used, the key-values are combined\nand only ads satisfying all criteria will be eligible to serve to a given slot.\nIn this example, the effective tageting for each slot is:\n\n| Ad slot | Effective targeting |\n|---------|-------------------------------------------------------|\n| 1 | `color=red AND position=atf AND interests=basketball` |\n| 2 | `position=btf AND interests=basketball` |\n\n| **Note:** If the same targeting key is defined at both the page- and slot-level, the slot-level value will take precedence for that slot.\n\n### Target multiple keys or values\n\nIn the preceding example, a combination of slot- and page-level targeting was\nused to define multiple targeting keys for a single ad slot. Here are some\nalternative approaches to achieve the same effective targeting: \n\n### Slot-level targeting only\n\nIn this example, shared key-values are repeated for each ad slot. \n\n // Slot-level targeting with multiple keys.\n adSlots[0] = googletag\n .defineSlot('/6355419/Travel/Asia', [728, 90], 'banner-ad-1')\n .addService(googletag.pubads());\n adSlots[0].setConfig({\n targeting: {\n color: 'red',\n position: 'atf',\n interests: 'basketball'\n }\n });\n adSlots[1] = googletag\n .defineSlot('/6355419/Travel/Asia', [728, 90], 'banner-ad-2')\n .addService(googletag.pubads());\n adSlots[1].setConfig({\n targeting: {\n position: 'btf',\n interests: 'basketball'\n }\n });\n\n### Page-level default targeting\n\nIn this example, default targeting is set at the page-level and overridden\nat the slot-level as necessary.\n**Caution:** Key-values set at the page-level cannot be cleared at the slot-level, only modified. \n\n // Page-level default targeting.\n googletag.setConfig({\n targeting: {\n interests: 'basketball',\n position: 'btf'\n }\n });\n\n // Slot-level targeting overrides.\n adSlots[0] = googletag\n .defineSlot('/6355419/Travel/Asia', [728, 90], 'banner-ad-1')\n .addService(googletag.pubads());\n adSlots[0].setConfig({\n targeting: {\n color: 'red',\n position: 'atf'\n }\n });\n adSlots[1] = googletag\n .defineSlot('/6355419/Travel/Asia', [728, 90], 'banner-ad-2')\n .addService(googletag.pubads());\n\nIt's also possible to target multiple values for a single key by providing an\narray of values when calling `setConfig()`: \n\n // Page-level targeting with multiple values for a single key.\n googletag.setConfig({ targeting: { interests: ['baseball', 'basketball'] } });\n\nClear targeting\n---------------\n\nOnce targeting has been set, the configured key-values will be sent with every\nad request for the life of the ad slot. In some circumstances, however, it may\nbe desirable for targeting to change over time. While `setConfig()` can be\nused to add and overwrite key-values, it's not possible to remove them this way.\nTo accomplish that, you must clear the targeting by setting the value to `null`\nin the `setConfig()` method. \n\n```javascript\n// Step 0, define slot- and page-level targeting.\nadSlots[0] = googletag\n .defineSlot(\"/6355419/Travel/Asia\", [728, 90], \"banner-ad-1\")\n .addService(googletag.pubads());\nadSlots[0].setConfig({\n targeting: {\n color: \"red\",\n position: \"atf\",\n },\n});\n\ngoogletag.setConfig({\n targeting: {\n interests: \"basketball\",\n },\n singleRequest: true,\n});\n\n// Step 1, clear slot-level color targeting.\nadSlots[0].setConfig({\n targeting: {\n color: null,\n },\n});\n\n// Step 2, clear all page-level targeting.\ngoogletag.setConfig({\n targeting: null,\n});\n```\n\nWhen `clearTargeting()` is called with a specific key (either at the\nslot- or page- level), only that key is removed. When no key is specified, all\ntargeting at that level is removed.\n\nIn the preceding example, the effective targeting for the ad slot after each\nstep is:\n\n| Step | Effective targeting |\n|------|-------------------------------------------------------|\n| 0 | `color=red AND position=atf AND interests=basketball` |\n| 1 | `position=atf AND interests=basketball` |\n| 2 | `position=atf` |"]]