{"id":117087,"date":"2013-05-10T22:39:00","date_gmt":"2013-05-11T03:39:00","guid":{"rendered":"https:\/\/www.dacgroup.com\/how-granular-should-you-be-with-your-paid-search-geo-targeting\/"},"modified":"2024-12-19T16:39:58","modified_gmt":"2024-12-19T21:39:58","slug":"how-granular-should-you-be-with-your-paid-search-geo-targeting","status":"publish","type":"post","link":"https:\/\/www.dacgroup.com\/en-ca\/insights\/blog\/local-search\/how-granular-should-you-be-with-your-paid-search-geo-targeting\/","title":{"rendered":"Geo-granularity in Paid Search"},"content":{"rendered":"<p>We all know by now that search is an effective channel for <a href=\"\/local-marketing-platforms\/\">local marketing<\/a>. Marketing through search at the local level is best practice for businesses with physical locations (and even for some without), but doing that at scale can be tricky. If you have a business with multiple locations, you\u2019ll want to ensure that people searching in a particular area get served an ad that calls out the city they\u2019re in. Ideally, you would show offers for that city and drive to the landing page specifically for that city. The most straightforward way to accomplish this is to create one campaign for each city and set the geo-target to that city alone.<\/p>\n<p style=\"text-align: center;\"><a href=\"\/wpe-content\/uploads\/2013\/05\/geo-targeting-2.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-medium wp-image-3749\" src=\"\/wpe-content\/uploads\/2013\/05\/geo-targeting-2.jpg\" alt=\"geo-targeting (2)\" width=\"300\" height=\"188\" \/><\/a><\/p>\n<p>So what if you have 1,500 cities? And then what if you want to split your budget by brand vs. non-brand? This means you have to create 3,000 campaigns. If you have 50 ad groups per campaign, you\u2019re now dealing with 150,000 ad groups and potentially millions of keywords. This can start to get pretty messy for day-to-day management.<\/p>\n<p>The level of geo-granularity when it comes to structuring <a href=\"\/services\/search-engine-marketing\/\">paid search campaigns<\/a> is an on-going struggle. As the space becomes increasingly competitive, appearing as the most relevant ad on the SERP is critical.\u00a0 To accomplish this, should you geo-target strictly at the city level and create one campaign per city? Should you create one campaign at the state level and geo-target only the list of cities where you have locations? Or should you target the entire state and separate your locations using ad groups?<\/p>\n<p>I tested two of these scenarios.<\/p>\n<p><strong>Test 1:<\/strong><\/p>\n<p>For a company with 40 locations in the state of Texas, for a 14 day period, I created one campaign for each city and set the geo-targeting for each campaign to that city only. For the next 14 days, I created one campaign, and geo targeted the same list of 40 cities, but all within one campaign. Keywords, ad copy and max CPC bids stayed the same.<\/p>\n<table class=\"aligncenter\" border=\"1\" cellspacing=\"0\" cellpadding=\"0\">\n<tbody>\n<tr>\n<td valign=\"top\" nowrap=\"nowrap\" width=\"133\">Metric<\/td>\n<td valign=\"top\" nowrap=\"nowrap\" width=\"120\">40 Campaigns &#8211; 40 Cities<\/td>\n<td valign=\"top\" nowrap=\"nowrap\" width=\"108\">1 Campaign &#8211; 40 Cities<\/td>\n<td valign=\"top\" nowrap=\"nowrap\" width=\"78\">% Change<\/td>\n<\/tr>\n<tr>\n<td valign=\"top\" nowrap=\"nowrap\" width=\"133\">Impressions<\/td>\n<td valign=\"top\" nowrap=\"nowrap\" width=\"120\">37,533<\/td>\n<td valign=\"top\" nowrap=\"nowrap\" width=\"108\">68,232<\/td>\n<td valign=\"top\" nowrap=\"nowrap\" width=\"78\">81.79%<\/td>\n<\/tr>\n<tr>\n<td valign=\"top\" nowrap=\"nowrap\" width=\"133\">Clicks<\/td>\n<td valign=\"top\" nowrap=\"nowrap\" width=\"120\">711<\/td>\n<td valign=\"top\" nowrap=\"nowrap\" width=\"108\">1,353<\/td>\n<td valign=\"top\" nowrap=\"nowrap\" width=\"78\">90.30%<\/td>\n<\/tr>\n<tr>\n<td valign=\"top\" nowrap=\"nowrap\" width=\"133\">CTR<\/td>\n<section data-role=\"forward-email-subscription-container\" class=\"full-width w-100 d-flex justify-content-center align-items-center bg-c7f2b3\">\n    \n    <div class=\"max-w-1400 w-100 form\">\n        <div class=\"text-content-container\">\n            <h2>\n                Stay Forward            <\/h2>\n            <p class=\"subtitle\">\n                Get exclusive insights into digital <br class=\"d-none d-lg-block\">media's top-trending topics delivered<br class=\"d-none d-lg-block\"> directly to your inbox.            <\/p>\n        <\/div>\n\n        <div data-role=\"form-group\">\n            <div class=\"d-flex flex-column w-100\">\n                <form data-forward-email-form class='custom-hubspot-form' id='hubspot_form_69f2f0895cf81'>\n    <div class='d-flex input'>\n        <input type='email' class='form-control me-2 input' placeholder='Email address' aria-label='Email' name='email' required>\n        <button type='submit' class='btn_primary-filled_white'>Submit\n<\/button>\n    <\/div>\n    <p class='hubspot-status'><\/p>\n<\/form>\n<script>\njQuery(document).ready(function($) {\n    var form = $('#hubspot_form_69f2f0895cf81');\n    form.on('submit', function(event) {\n        event.preventDefault();\n\n        \/\/ Get email input value\n        var emailInput = form.find('input[name=\"email\"]');\n        var email = emailInput.val().trim();\n\n        \/\/ Required HubSpot fields\n        var portalId = '5408011';\n        var formId = '0c9a9cec-eb1c-44ac-920f-687ce0230830';\n\n        \/\/ Prepare the data payload\n        var data = {\n            fields: [\n                {\n                    name: 'email',\n                    value: email\n                }\n            ],\n            context: {\n                pageUri: window.location.href,\n                pageName: document.title\n            },\n            submittedAt: new Date().getTime()\n        };\n\n        \/\/ Get the status element for this form\n        var statusElement = form.siblings('.forward-email-status-container');\n\n        \/\/ Send the data to HubSpot\n        fetch('https:\/\/api.hsforms.com\/submissions\/v3\/integration\/submit\/5408011\/0c9a9cec-eb1c-44ac-920f-687ce0230830', {\n            method: 'POST',\n            headers: {\n                'Content-Type': 'application\/json'\n            },\n            body: JSON.stringify(data)\n        })\n        .then(response => {\n            if (response.ok) {\n                if(statusElement) {\n                    statusElement.text('Thanks for Subscribing!');\n                    statusElement.css('color', 'green');\n                }\n\n                var userInfo = JSON.parse(localStorage.getItem('userInfo'));\n                if (userInfo) {\n                    userInfo.event = 'Form_submit';\n                    userInfo.email = email;\n                    userInfo.form_name = 'Newsletter';\n                    window.dataLayer = window.dataLayer || [];\n                    window.dataLayer.push(userInfo);\n                }\n\n                emailInput.val(''); \/\/ Clear the email field\n                window.dispatchEvent(new CustomEvent('newsletter-submit'));\n            } else {\n                return response.json().then(error => {\n                    if(statusElement) {\n                        statusElement.text('Error: ' + error.message);\n                        statusElement.css({\n                            'color': 'red',\n                            'padding-top': '10px'\n                        });\n                    }\n                });\n            }\n        })\n        .catch(error => {\n            console.error('Error:', error);\n            statusElement.text(\"There was an error submitting the form.\");\n            statusElement.css({\n                'color': 'red',\n                'padding-top': '10px'\n            });\n        });\n    });\n\n    window.addEventListener('message', function(event) {\n        const isFormCallback = event.data.type === 'hsFormCallback';\n        const isFormSubmitted = event.data.eventName === 'onFormSubmitted';\n        const iscurrentForm = !!event?.data?.id ? '0c9a9cec-eb1c-44ac-920f-687ce0230830'.trim() == event?.data?.id : false; \n\n        if( isFormCallback && isFormSubmitted && iscurrentForm ) {\n            console.log('event', event);\n            window.location.href = 'https:\/\/www.dacgroup.com\/en-ca\/thank-you\/';\n        }\n    });\n});\n<\/script>                <span class=\"forward-email-status-container\"><\/span>\n            <\/div>\n\n            <button id=\"forward-form-submission\" class=\"subscribe-btn\" type=\"button\" onclick=\"triggerButton(this)\">\n                <span class=\"d-inline-block\">\n                    SUBSCRIBE                <\/span>\n                <span class=\"d-inline-block bell-container\">\n                    <svg width=\"28\" height=\"28\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\">\n                        <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M3.5458 14.4774L4.50055 13.234C4.50657 11.8629 4.56791 9.80824 5.17539 8.00401C5.52706 6.95953 6.09459 5.89126 7.03537 5.08C7.70533 4.50227 8.51103 4.10149 9.44696 3.90922C9.50872 3.69984 9.5922 3.49047 9.70471 3.28979C9.91134 2.92122 10.2194 2.57523 10.654 2.33189C11.0827 2.09183 11.5478 2 12 2C12.4355 2 12.8969 2.08208 13.3272 2.31763C13.7695 2.55969 14.0812 2.91045 14.2866 3.28943C14.3999 3.49849 14.4813 3.71787 14.5396 3.93682C15.5444 4.18145 16.3788 4.69659 17.0444 5.38131C17.9498 6.3126 18.4937 7.50224 18.8321 8.60503C19.3645 10.3395 19.4725 12.1499 19.4944 13.1421C19.9371 13.6338 20.3502 14.1627 20.6914 14.626C21.9447 16.3277 20.6148 18.5001 18.7001 18.5001L5.52863 18.5C3.45543 18.5 2.28314 16.1217 3.5458 14.4774Z\" stroke=\"#171616\" \/>\n                        <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M9.0857 19.3749C9.431 19.1461 9.89639 19.2405 10.1252 19.5858C10.874 20.7159 12.7481 21.0858 13.9 19.5501C14.1485 19.2187 14.6186 19.1516 14.95 19.4001C15.2813 19.6486 15.3485 20.1187 15.1 20.4501C13.2518 22.9143 10.126 22.3027 8.87475 20.4143C8.64596 20.069 8.74041 19.6037 9.0857 19.3749Z\" fill=\"#171616\" \/>\n                    <\/svg>\n                <\/span>\n            <\/button>\n        <\/div>\n    <\/div>\n\n    \n    <script>\n        function triggerButton(button) {\n\n            var container = button.closest('[data-role=\"forward-email-subscription-container\"]');\n            var form = container.querySelector('[data-forward-email-form]');\n\n            if (form) {\n                jQuery(form).find(\"button[type='submit']\").trigger('click');\n            }\n        }\n    <\/script>\n\n<\/section>\n\n\n<td valign=\"top\" nowrap=\"nowrap\" width=\"120\">1.89%<\/td>\n<td valign=\"top\" nowrap=\"nowrap\" width=\"108\">1.98%<\/td>\n<td valign=\"top\" nowrap=\"nowrap\" width=\"78\">4.68%<\/td>\n<\/tr>\n<tr>\n<td valign=\"top\" nowrap=\"nowrap\" width=\"133\">Avg. position<\/td>\n<td valign=\"top\" nowrap=\"nowrap\" width=\"120\">2.2<\/td>\n<td valign=\"top\" nowrap=\"nowrap\" width=\"108\">1.7<\/td>\n<td valign=\"top\" nowrap=\"nowrap\" width=\"78\">20.83%<\/td>\n<\/tr>\n<tr>\n<td valign=\"top\" nowrap=\"nowrap\" width=\"133\">Leads<\/td>\n<td valign=\"top\" nowrap=\"nowrap\" width=\"120\">12<\/td>\n<td valign=\"top\" nowrap=\"nowrap\" width=\"108\">123<\/td>\n<td valign=\"top\" nowrap=\"nowrap\" width=\"78\">925.00%<\/td>\n<\/tr>\n<tr>\n<td valign=\"top\" nowrap=\"nowrap\" width=\"133\">Conversion Rate<\/td>\n<td valign=\"top\" nowrap=\"nowrap\" width=\"120\">1.69%<\/td>\n<td valign=\"top\" nowrap=\"nowrap\" width=\"108\">9.09%<\/td>\n<td valign=\"top\" nowrap=\"nowrap\" width=\"78\">438.64%<\/td>\n<\/tr>\n<tr>\n<td valign=\"top\" nowrap=\"nowrap\" width=\"133\">Search Impr. share<\/td>\n<td valign=\"top\" nowrap=\"nowrap\" width=\"120\">62.41%<\/td>\n<td valign=\"top\" nowrap=\"nowrap\" width=\"108\">61.71%<\/td>\n<td valign=\"top\" nowrap=\"nowrap\" width=\"78\">-1.12%<\/td>\n<\/tr>\n<tr>\n<td valign=\"top\" nowrap=\"nowrap\" width=\"133\">Search Lost IS (rank)<\/td>\n<td valign=\"top\" nowrap=\"nowrap\" width=\"120\">37.12%<\/td>\n<td valign=\"top\" nowrap=\"nowrap\" width=\"108\">31.51%<\/td>\n<td valign=\"top\" nowrap=\"nowrap\" width=\"78\">-15.11%<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>The results in this test show that having one campaign with multiple geo-targets yielded better results in this case. Gains were recognized in impressions, clicks, CTR, average position, lead volume, cost per lead, conversion rate and lost impression share due to rank. The down side is a slightly higher CPC and higher impression share loss due to budget. However, the results for the last 14 days were much more desirable overall than those from the first 14 days.<\/p>\n<p><strong>Test 2:<\/strong><\/p>\n<p>For a company with 64 locations in the state of California, for a seven day period, I had one campaign geo-targeted to all of California. For the next seven day period, within the same campaign, I changed the geo-targeting from all of California to the list of 64 cities. As with the first test, other variables remained the same.<\/p>\n<table class=\"aligncenter\" border=\"1\" cellspacing=\"0\" cellpadding=\"0\">\n<tbody>\n<tr>\n<td valign=\"top\" nowrap=\"nowrap\" width=\"133\">Metric<\/td>\n<td valign=\"top\" nowrap=\"nowrap\" width=\"102\">1 Campaigns &#8211; 1 state<\/td>\n<td valign=\"top\" nowrap=\"nowrap\" width=\"108\">1 Campaign &#8211; 64 Cities<\/td>\n<td valign=\"top\" nowrap=\"nowrap\" width=\"78\">% Change<\/td>\n<\/tr>\n<tr>\n<td valign=\"top\" nowrap=\"nowrap\" width=\"133\">Impressions<\/td>\n<td valign=\"top\" nowrap=\"nowrap\" width=\"102\">76,827<\/td>\n<td valign=\"top\" nowrap=\"nowrap\" width=\"108\">52,083<\/td>\n<td valign=\"top\" nowrap=\"nowrap\" width=\"78\">-32.21%<\/td>\n<\/tr>\n<tr>\n<td valign=\"top\" nowrap=\"nowrap\" width=\"133\">Clicks<\/td>\n<td valign=\"top\" nowrap=\"nowrap\" width=\"102\">882<\/td>\n<td valign=\"top\" nowrap=\"nowrap\" width=\"108\">879<\/td>\n<td valign=\"top\" nowrap=\"nowrap\" width=\"78\">-0.34%<\/td>\n<\/tr>\n<tr>\n<td valign=\"top\" nowrap=\"nowrap\" width=\"133\">CTR<\/td>\n<td valign=\"top\" nowrap=\"nowrap\" width=\"102\">1.15%<\/td>\n<td valign=\"top\" nowrap=\"nowrap\" width=\"108\">1.69%<\/td>\n<td valign=\"top\" nowrap=\"nowrap\" width=\"78\">47.01%<\/td>\n<\/tr>\n<tr>\n<td valign=\"top\" nowrap=\"nowrap\" width=\"133\">Avg. position<\/td>\n<td valign=\"top\" nowrap=\"nowrap\" width=\"102\">2.1<\/td>\n<td valign=\"top\" nowrap=\"nowrap\" width=\"108\">1.9<\/td>\n<td valign=\"top\" nowrap=\"nowrap\" width=\"78\">-12.53%<\/td>\n<\/tr>\n<tr>\n<td valign=\"top\" nowrap=\"nowrap\" width=\"133\">Leads<\/td>\n<td valign=\"top\" nowrap=\"nowrap\" width=\"102\">72<\/td>\n<td valign=\"top\" nowrap=\"nowrap\" width=\"108\">99<\/td>\n<td valign=\"top\" nowrap=\"nowrap\" width=\"78\">37.50%<\/td>\n<\/tr>\n<tr>\n<td valign=\"top\" nowrap=\"nowrap\" width=\"133\">Conversion Rate<\/td>\n<td valign=\"top\" nowrap=\"nowrap\" width=\"102\">8.16%<\/td>\n<td valign=\"top\" nowrap=\"nowrap\" width=\"108\">11.26%<\/td>\n<td valign=\"top\" nowrap=\"nowrap\" width=\"78\">37.97%<\/td>\n<\/tr>\n<tr>\n<td valign=\"top\" nowrap=\"nowrap\" width=\"133\">Search Impr. share<\/td>\n<td valign=\"top\" nowrap=\"nowrap\" width=\"102\">50.73%<\/td>\n<td valign=\"top\" nowrap=\"nowrap\" width=\"108\">59.94%<\/td>\n<td valign=\"top\" nowrap=\"nowrap\" width=\"78\">18.15%<\/td>\n<\/tr>\n<tr>\n<td valign=\"top\" nowrap=\"nowrap\" width=\"133\">Search Lost IS (rank)<\/td>\n<td valign=\"top\" nowrap=\"nowrap\" width=\"102\">49.27%<\/td>\n<td valign=\"top\" nowrap=\"nowrap\" width=\"108\">40.06%<\/td>\n<td valign=\"top\" nowrap=\"nowrap\" width=\"78\">-18.69%<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>In this test, the differences in results are not as dramatic, but they\u2019re still there. With far fewer impressions, we were able to maintain the same number of clicks, which means a higher click-through-rate and higher conversion rate. Cost-per-click also came down, average position went up and most notable are the gains in impression share and the drop in lost impression share due to rank.<\/p>\n<p>In summary, from these\u00a0two tests, we see that creating one campaign for each city may be too much of a granular choice for geo-targeting. At the other extreme, broadening the geo-targeting to cover the entire state may be too broad. The reasons why this is happening are completely open to speculation. The former may be severely restricting the number of auctions you enter, while the latter may be opening you up to too many auctions, reducing your relevance\/QS, and increasing costs.<\/p>\n<p>The middle-ground seems to be the sweet spot here. In both tests, one campaign with a list of city level geo-targets had the best results. What kind of results are you seeing from your geo-targeting testing? Please share in the comments below.<\/p>\n<p>Interested in finding out more? <a href=\"\/contact\/\">Contact us<\/a> today!<\/p>\n<p><i>Adiela Aviram<br \/>\n<\/i><\/p>\n","protected":false},"excerpt":{"rendered":"<p>We all know by now that search is an effective channel for local marketing. Marketing through search at the local level is best practice for businesses with physical locations (and even for some without), but doing that at scale can be tricky. If you have a business with multiple locations, you\u2019ll want to ensure that [&hellip;]<\/p>\n","protected":false},"author":22,"featured_media":101556,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"content-type":"","reading_level":"Technical","reading_level_confidence":0.72,"reading_level_needs_review":"0","footnotes":""},"categories":[2882],"tags":[],"class_list":["post-117087","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-local-search"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v23.7 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Geo-granularity in Paid Search | DAC<\/title>\n<meta name=\"description\" content=\"Marketing through search at the local level is best practice for businesses with physical locations (and even for some without), but doing that at scale can be tricky. If you have a business with multiple locations, you\u2019ll want to ensure\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.dacgroup.com\/en-ca\/insights\/blog\/local-search\/how-granular-should-you-be-with-your-paid-search-geo-targeting\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Geo-granularity in Paid Search | DAC\" \/>\n<meta property=\"og:description\" content=\"Marketing through search at the local level is best practice for businesses with physical locations (and even for some without), but doing that at scale can be tricky. If you have a business with multiple locations, you\u2019ll want to ensure\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.dacgroup.com\/en-ca\/insights\/blog\/local-search\/how-granular-should-you-be-with-your-paid-search-geo-targeting\/\" \/>\n<meta property=\"og:site_name\" content=\"DAC\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/DACGroup\" \/>\n<meta property=\"article:published_time\" content=\"2013-05-11T03:39:00+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2024-12-19T21:39:58+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.dacgroup.com\/wp-content\/uploads\/2024\/12\/geo-targeting-2.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"407\" \/>\n\t<meta property=\"og:image:height\" content=\"256\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"DAC\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:image\" content=\"https:\/\/www.dacgroup.com\/wp-content\/uploads\/2024\/09\/DAC-logo.svg\" \/>\n<meta name=\"twitter:creator\" content=\"@DAC_group\" \/>\n<meta name=\"twitter:site\" content=\"@DAC_group\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"DAC\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"4 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/www.dacgroup.com\/en-ca\/insights\/blog\/local-search\/how-granular-should-you-be-with-your-paid-search-geo-targeting\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.dacgroup.com\/en-ca\/insights\/blog\/local-search\/how-granular-should-you-be-with-your-paid-search-geo-targeting\/\"},\"author\":{\"name\":\"DAC\",\"@id\":\"https:\/\/www.dacgroup.com\/en-ca\/#\/schema\/person\/9ab33eb67f1ee2a837c48ff3b97e4693\"},\"headline\":\"Geo-granularity in Paid Search\",\"datePublished\":\"2013-05-11T03:39:00+00:00\",\"dateModified\":\"2024-12-19T21:39:58+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.dacgroup.com\/en-ca\/insights\/blog\/local-search\/how-granular-should-you-be-with-your-paid-search-geo-targeting\/\"},\"wordCount\":716,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/www.dacgroup.com\/en-ca\/#organization\"},\"image\":{\"@id\":\"https:\/\/www.dacgroup.com\/en-ca\/insights\/blog\/local-search\/how-granular-should-you-be-with-your-paid-search-geo-targeting\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.dacgroup.com\/wp-content\/uploads\/2024\/12\/geo-targeting-2.jpg\",\"articleSection\":[\"Local Search\"],\"inLanguage\":\"en-CA\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/www.dacgroup.com\/en-ca\/insights\/blog\/local-search\/how-granular-should-you-be-with-your-paid-search-geo-targeting\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.dacgroup.com\/en-ca\/insights\/blog\/local-search\/how-granular-should-you-be-with-your-paid-search-geo-targeting\/\",\"url\":\"https:\/\/www.dacgroup.com\/en-ca\/insights\/blog\/local-search\/how-granular-should-you-be-with-your-paid-search-geo-targeting\/\",\"name\":\"Geo-granularity in Paid Search | DAC\",\"isPartOf\":{\"@id\":\"https:\/\/www.dacgroup.com\/en-ca\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.dacgroup.com\/en-ca\/insights\/blog\/local-search\/how-granular-should-you-be-with-your-paid-search-geo-targeting\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/www.dacgroup.com\/en-ca\/insights\/blog\/local-search\/how-granular-should-you-be-with-your-paid-search-geo-targeting\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.dacgroup.com\/wp-content\/uploads\/2024\/12\/geo-targeting-2.jpg\",\"datePublished\":\"2013-05-11T03:39:00+00:00\",\"dateModified\":\"2024-12-19T21:39:58+00:00\",\"description\":\"Marketing through search at the local level is best practice for businesses with physical locations (and even for some without), but doing that at scale can be tricky. If you have a business with multiple locations, you\u2019ll want to ensure\",\"breadcrumb\":{\"@id\":\"https:\/\/www.dacgroup.com\/en-ca\/insights\/blog\/local-search\/how-granular-should-you-be-with-your-paid-search-geo-targeting\/#breadcrumb\"},\"inLanguage\":\"en-CA\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.dacgroup.com\/en-ca\/insights\/blog\/local-search\/how-granular-should-you-be-with-your-paid-search-geo-targeting\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-CA\",\"@id\":\"https:\/\/www.dacgroup.com\/en-ca\/insights\/blog\/local-search\/how-granular-should-you-be-with-your-paid-search-geo-targeting\/#primaryimage\",\"url\":\"https:\/\/www.dacgroup.com\/wp-content\/uploads\/2024\/12\/geo-targeting-2.jpg\",\"contentUrl\":\"https:\/\/www.dacgroup.com\/wp-content\/uploads\/2024\/12\/geo-targeting-2.jpg\",\"width\":407,\"height\":256,\"caption\":\"Map with a red pushpin marking New York.\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.dacgroup.com\/en-ca\/insights\/blog\/local-search\/how-granular-should-you-be-with-your-paid-search-geo-targeting\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.dacgroup.com\/en-ca\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Geo-granularity in Paid Search\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.dacgroup.com\/en-ca\/#website\",\"url\":\"https:\/\/www.dacgroup.com\/en-ca\/\",\"name\":\"DAC group\",\"description\":\"DAC\",\"publisher\":{\"@id\":\"https:\/\/www.dacgroup.com\/en-ca\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.dacgroup.com\/en-ca\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-CA\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/www.dacgroup.com\/en-ca\/#organization\",\"name\":\"DAC group\",\"alternateName\":\"DAC\",\"url\":\"https:\/\/www.dacgroup.com\/en-ca\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-CA\",\"@id\":\"https:\/\/www.dacgroup.com\/en-ca\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/www.dacgroup.com\/wp-content\/uploads\/2024\/09\/DAC-logo.svg\",\"contentUrl\":\"https:\/\/www.dacgroup.com\/wp-content\/uploads\/2024\/09\/DAC-logo.svg\",\"caption\":\"DAC group\"},\"image\":{\"@id\":\"https:\/\/www.dacgroup.com\/en-ca\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/www.facebook.com\/DACGroup\",\"https:\/\/x.com\/DAC_group\",\"https:\/\/www.linkedin.com\/company\/dac-group\/\",\"https:\/\/www.instagram.com\/dac_group\/\",\"https:\/\/www.youtube.com\/user\/DACgroup1976\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.dacgroup.com\/en-ca\/#\/schema\/person\/9ab33eb67f1ee2a837c48ff3b97e4693\",\"name\":\"DAC\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-CA\",\"@id\":\"https:\/\/www.dacgroup.com\/en-ca\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/e956012bfe6af15931e3ab147f0c7882eba551217e45a155491991a29faae6ff?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/e956012bfe6af15931e3ab147f0c7882eba551217e45a155491991a29faae6ff?s=96&d=mm&r=g\",\"caption\":\"DAC\"}}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Geo-granularity in Paid Search | DAC","description":"Marketing through search at the local level is best practice for businesses with physical locations (and even for some without), but doing that at scale can be tricky. If you have a business with multiple locations, you\u2019ll want to ensure","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.dacgroup.com\/en-ca\/insights\/blog\/local-search\/how-granular-should-you-be-with-your-paid-search-geo-targeting\/","og_locale":"en_US","og_type":"article","og_title":"Geo-granularity in Paid Search | DAC","og_description":"Marketing through search at the local level is best practice for businesses with physical locations (and even for some without), but doing that at scale can be tricky. If you have a business with multiple locations, you\u2019ll want to ensure","og_url":"https:\/\/www.dacgroup.com\/en-ca\/insights\/blog\/local-search\/how-granular-should-you-be-with-your-paid-search-geo-targeting\/","og_site_name":"DAC","article_publisher":"https:\/\/www.facebook.com\/DACGroup","article_published_time":"2013-05-11T03:39:00+00:00","article_modified_time":"2024-12-19T21:39:58+00:00","og_image":[{"width":407,"height":256,"url":"https:\/\/www.dacgroup.com\/wp-content\/uploads\/2024\/12\/geo-targeting-2.jpg","type":"image\/jpeg"}],"author":"DAC","twitter_card":"summary_large_image","twitter_image":"https:\/\/www.dacgroup.com\/wp-content\/uploads\/2024\/09\/DAC-logo.svg","twitter_creator":"@DAC_group","twitter_site":"@DAC_group","twitter_misc":{"Written by":"DAC","Est. reading time":"4 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.dacgroup.com\/en-ca\/insights\/blog\/local-search\/how-granular-should-you-be-with-your-paid-search-geo-targeting\/#article","isPartOf":{"@id":"https:\/\/www.dacgroup.com\/en-ca\/insights\/blog\/local-search\/how-granular-should-you-be-with-your-paid-search-geo-targeting\/"},"author":{"name":"DAC","@id":"https:\/\/www.dacgroup.com\/en-ca\/#\/schema\/person\/9ab33eb67f1ee2a837c48ff3b97e4693"},"headline":"Geo-granularity in Paid Search","datePublished":"2013-05-11T03:39:00+00:00","dateModified":"2024-12-19T21:39:58+00:00","mainEntityOfPage":{"@id":"https:\/\/www.dacgroup.com\/en-ca\/insights\/blog\/local-search\/how-granular-should-you-be-with-your-paid-search-geo-targeting\/"},"wordCount":716,"commentCount":0,"publisher":{"@id":"https:\/\/www.dacgroup.com\/en-ca\/#organization"},"image":{"@id":"https:\/\/www.dacgroup.com\/en-ca\/insights\/blog\/local-search\/how-granular-should-you-be-with-your-paid-search-geo-targeting\/#primaryimage"},"thumbnailUrl":"https:\/\/www.dacgroup.com\/wp-content\/uploads\/2024\/12\/geo-targeting-2.jpg","articleSection":["Local Search"],"inLanguage":"en-CA","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.dacgroup.com\/en-ca\/insights\/blog\/local-search\/how-granular-should-you-be-with-your-paid-search-geo-targeting\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.dacgroup.com\/en-ca\/insights\/blog\/local-search\/how-granular-should-you-be-with-your-paid-search-geo-targeting\/","url":"https:\/\/www.dacgroup.com\/en-ca\/insights\/blog\/local-search\/how-granular-should-you-be-with-your-paid-search-geo-targeting\/","name":"Geo-granularity in Paid Search | DAC","isPartOf":{"@id":"https:\/\/www.dacgroup.com\/en-ca\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.dacgroup.com\/en-ca\/insights\/blog\/local-search\/how-granular-should-you-be-with-your-paid-search-geo-targeting\/#primaryimage"},"image":{"@id":"https:\/\/www.dacgroup.com\/en-ca\/insights\/blog\/local-search\/how-granular-should-you-be-with-your-paid-search-geo-targeting\/#primaryimage"},"thumbnailUrl":"https:\/\/www.dacgroup.com\/wp-content\/uploads\/2024\/12\/geo-targeting-2.jpg","datePublished":"2013-05-11T03:39:00+00:00","dateModified":"2024-12-19T21:39:58+00:00","description":"Marketing through search at the local level is best practice for businesses with physical locations (and even for some without), but doing that at scale can be tricky. If you have a business with multiple locations, you\u2019ll want to ensure","breadcrumb":{"@id":"https:\/\/www.dacgroup.com\/en-ca\/insights\/blog\/local-search\/how-granular-should-you-be-with-your-paid-search-geo-targeting\/#breadcrumb"},"inLanguage":"en-CA","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.dacgroup.com\/en-ca\/insights\/blog\/local-search\/how-granular-should-you-be-with-your-paid-search-geo-targeting\/"]}]},{"@type":"ImageObject","inLanguage":"en-CA","@id":"https:\/\/www.dacgroup.com\/en-ca\/insights\/blog\/local-search\/how-granular-should-you-be-with-your-paid-search-geo-targeting\/#primaryimage","url":"https:\/\/www.dacgroup.com\/wp-content\/uploads\/2024\/12\/geo-targeting-2.jpg","contentUrl":"https:\/\/www.dacgroup.com\/wp-content\/uploads\/2024\/12\/geo-targeting-2.jpg","width":407,"height":256,"caption":"Map with a red pushpin marking New York."},{"@type":"BreadcrumbList","@id":"https:\/\/www.dacgroup.com\/en-ca\/insights\/blog\/local-search\/how-granular-should-you-be-with-your-paid-search-geo-targeting\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.dacgroup.com\/en-ca\/"},{"@type":"ListItem","position":2,"name":"Geo-granularity in Paid Search"}]},{"@type":"WebSite","@id":"https:\/\/www.dacgroup.com\/en-ca\/#website","url":"https:\/\/www.dacgroup.com\/en-ca\/","name":"DAC group","description":"DAC","publisher":{"@id":"https:\/\/www.dacgroup.com\/en-ca\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.dacgroup.com\/en-ca\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-CA"},{"@type":"Organization","@id":"https:\/\/www.dacgroup.com\/en-ca\/#organization","name":"DAC group","alternateName":"DAC","url":"https:\/\/www.dacgroup.com\/en-ca\/","logo":{"@type":"ImageObject","inLanguage":"en-CA","@id":"https:\/\/www.dacgroup.com\/en-ca\/#\/schema\/logo\/image\/","url":"https:\/\/www.dacgroup.com\/wp-content\/uploads\/2024\/09\/DAC-logo.svg","contentUrl":"https:\/\/www.dacgroup.com\/wp-content\/uploads\/2024\/09\/DAC-logo.svg","caption":"DAC group"},"image":{"@id":"https:\/\/www.dacgroup.com\/en-ca\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/DACGroup","https:\/\/x.com\/DAC_group","https:\/\/www.linkedin.com\/company\/dac-group\/","https:\/\/www.instagram.com\/dac_group\/","https:\/\/www.youtube.com\/user\/DACgroup1976"]},{"@type":"Person","@id":"https:\/\/www.dacgroup.com\/en-ca\/#\/schema\/person\/9ab33eb67f1ee2a837c48ff3b97e4693","name":"DAC","image":{"@type":"ImageObject","inLanguage":"en-CA","@id":"https:\/\/www.dacgroup.com\/en-ca\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/e956012bfe6af15931e3ab147f0c7882eba551217e45a155491991a29faae6ff?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/e956012bfe6af15931e3ab147f0c7882eba551217e45a155491991a29faae6ff?s=96&d=mm&r=g","caption":"DAC"}}]}},"_links":{"self":[{"href":"https:\/\/www.dacgroup.com\/en-ca\/wp-json\/wp\/v2\/posts\/117087","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.dacgroup.com\/en-ca\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.dacgroup.com\/en-ca\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.dacgroup.com\/en-ca\/wp-json\/wp\/v2\/users\/22"}],"replies":[{"embeddable":true,"href":"https:\/\/www.dacgroup.com\/en-ca\/wp-json\/wp\/v2\/comments?post=117087"}],"version-history":[{"count":0,"href":"https:\/\/www.dacgroup.com\/en-ca\/wp-json\/wp\/v2\/posts\/117087\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.dacgroup.com\/en-ca\/wp-json\/wp\/v2\/media\/101556"}],"wp:attachment":[{"href":"https:\/\/www.dacgroup.com\/en-ca\/wp-json\/wp\/v2\/media?parent=117087"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.dacgroup.com\/en-ca\/wp-json\/wp\/v2\/categories?post=117087"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.dacgroup.com\/en-ca\/wp-json\/wp\/v2\/tags?post=117087"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}