Local SEO Tips for Local Business Structured Data Markup


If you are fed up with trying to wrap Microdata html around your pages content then these Local SEO tips for implementing Local Business structured data markup with JSON-LD is for you. I break down Local Business structured data for a selection of Local Business types that can be amended to suit your business type and how to add it sitewide or page level.

 

Local Business Structured Data Markup with JSON-LD

A couple of things to note:

  • Google does not always support schema.org markup as it becomes available. Use Googles structured data testing tool to see what is recognized and supported.
  • Most local business structured data out there does not include image and priceRange. I include these in my structured data and so should you if you want an enhanced mobile rich snippet
  • I do not include Geo Coordinates because any user can change your PIN marker on maps thereby altering your Geo Coordinates which has caused conflicts in the past. I include hasMap instead which cannot be altered by users
  • I include sameAs to add your business social media profiles. You can also add top level business citations, by top level I mean BBB, chamber of commerce, companies house listings or other high authority review sites that you may be using.

 

Local Business Structured Data Types

Check http://schema.org/LocalBusiness to see if your business type is specifically included, if not use LocalBusiness as default until it is supported.

 

Local Business Structured Data Markup – Basic Single Location

 

<script type="application/ld+json">
   {
  	"@context": "http://schema.org",
  	"@type": "LocalBusiness",
    "image": "Image URL",
    "priceRange" : "Price Range",
  	"address": {
    "@type": "PostalAddress",
    "streetAddress": "First Line Address",
    "addressLocality": "Town",
    "addressRegion": "State ",
    "postalCode":"Post Code"
    
  	},
  	"description": "Brief Description of Business",
  	"name": "Name of Business",
    "openingHours": "Mo-Fr 09:00-17:00",
  	"telephone": "0800 000 000",
  	"email": "info@yourdomain",
    "url": "https://www.yourdomain.co.uk",
    "hasMap": "Short link direct from your GMB listing",
    "sameAs" : [
    "Social media channel", 
   “Social media channel”


   ]
     }
   }
</script>

 

Tips:
priceRange in the above is listed as “Best Rate Guaranteed”, depending on your buisness it could also be, “Free Quote Available”, “Priced on Quote” or if you do have an actual product price range you could use “£10 – £25”.

I recommend that single location businesses also include the business contact details within their sites footer, after all you want your customers to find you.

 

Adding Address to Site Footer for Local Business Structured Data - Online Ownership

 

Local Business Structured Data Markup – Business with Two Locations

In this instance it is a Real Estate Agent with two locations.

 

<script type='application/ld+json'> 
{
"@context": {
"@vocab": "http://schema.org/"
},
"@graph": [
{
"@id": "https://your-domain.co.uk",
  "@type": "Organization",
  "name": "Main Business Name",
  "url": "https://your-domain.co.uk",
   "logo": "https://your-domain.co.uk/logo.jpg",
  "sameAs": [
    "https://twitter.com/main brand social",
    "https://www.youtube.com/main brand social",
    "https://www.facebook.com/main brand social"
  ]
},
{
"@type": "RealEstateAgent",
   "parentOrganization": {
"name" : "Name of Main Business"
},
"name": "Local Business Name if Different",
"description": "Short Business Description",
    "image": "https://your-domain.co.uk/logo.jpg",
    "priceRange" : "Monthly - Weekly Rental",
  	"address": {
    "@type": "PostalAddress",
    "streetAddress": "Street Address",
    "addressLocality": "Town / City",
    "addressRegion": "County or State",
    "postalCode":"Post Code"
    
  	},
  	
               "openingHours": [
              "Mon-Fri 09:00-17:30"
             
],
    "telephone": "0800 000 000",
     "url": "https://your-domain.co.uk/location-page/",
    "hasMap": "https://goo.gl/maps/from-GMB-listing",
    "sameAs" : [
    "Social Channel for Business Location",
    "Social Channel for Business Location"
      ]
     },
     
  
{
"@type": "RealEstateAgent",
   "parentOrganization": {
"name" : "Name of Main Business"
},
"name": "Local Business Name if Different",
"description": "Short Business Description",
    "image": "https://your-domain.co.uk/logo.jpg",
    "priceRange" : "Monthly - Weekly Rental",
  	"address": {
    "@type": "PostalAddress",
    "streetAddress": "Street Address",
    "addressLocality": "Town / City",
    "addressRegion": "County or State",
    "postalCode":"Post Code"
    
  	},
  	
               "openingHours": [
              "Mon-Fri 09:00-17:30",
             "Sat 10:00-13:00"
],
   "telephone": "0800 000 000",
     "url": "https://your-domain.co.uk/location-page/",
    "hasMap": "https://goo.gl/maps/from-GMB-listing",
    "sameAs" : [
    "Social Channel for Business Location",
    "Social Channel for Business Location"
 ]
 }
]
}
</script>

 

Locating your hasMap:
Locate your business listing in Google Maps. Use the hamburger menu (top left search bar), select share or embed.

 

hasMap for Local Business Structured Data Markup - Online Ownership

 

Local Business Structured Data Markup – Business with Service Area

In this structured data the business is a Taxi service, but it could be a plumber, electrician, locksmith, any business that provides the service within a certain area.

 

<script type="application/ld+json">
  {
    "@context": "http://schema.org/",
    "@type": "TaxiService",
    "provider": {
      "@type": "LocalBusiness",
      "name": "Name of Business",
      "telephone": "0800 000 000",
  	"email": "book@your-domain.co.uk",
    "url": "https://www.your-domain.co.uk/",
    "hasMap": "https://goo.gl/maps/your-google-map",
      "image": "https://www.your-domain.co.uk/Taxi-Service-Logo.jpg",
    "priceRange" : "Book Online or Request Quote",
    "address": {
    "@type": "PostalAddress",
    "streetAddress": "Street Address",
    "addressLocality": "Town or City",
    "addressRegion": "County or State",
    "postalCode":"Post Code",
      "sameAs" : [
    "Social Channel for Business",
    "Social Channel for Business",
    "Social Channel for Business",
    "Your Gov Taxi Licence Page"
    
    ]
    },
      "location": {
        "@type": "Place",
       
        "geo": {
          "@type": "GeoCircle",
          "geoMidpoint": {
            "@type": "GeoCoordinates",
            "latitude": "53.1925352",
            "longitude": "-2.9039756"
          },
          "geoRadius": "45"
        }
      }
    },
    "providerMobility": "dynamic"
  }
</script>

 

GeoCoordinates Tip:
Make sure you select the mid point of your service area for the GeoCoordinates. The radius is in miles.

 

Local Business Structured Data Markup – Hotel

This is a basic hotel structured data markup, for variations that include reservations, aggregate ratings and properties within a hotel, like restaurant or spa, please visit my hotel structured data guide.

 

<script type="application/ld+json">
{
  "@context": "http://schema.org",
  "@type": "Hotel",
  "image": "http://www.your-domain.com/Image-or-Logo.jpg",
  "starRating" : { "@type" : "Rating",
                   "ratingValue" : "5"},
  "priceRange" : "Best Rate Guaranteed",
 "address": {
    "@type": "PostalAddress",
    "streetAddress": "Street Address",
    "addressLocality": "Town or City",
    "addressRegion": "County or State",
    "postalCode": "Post Code",
    "addressCountry": "Country"
  },
  
  "description": "Description of the Hotel",
  "name": "Official Name",
  "alternateName": "If Known by Another Name",
   "telephone": "+00 00 000 000",
  "email": "rsvn.aph@your-domain.com",
  "url": "http://www.your-domain.com",
  "sameAs" : 
  [ "Social Channel",
    "Social Channel",
    "Review Listing or Booking Listing"]
    },   
   "hasMap": "https://goo.gl/maps/google-map"
  }
 }
}
</script>

 

Adding your Structured Data to Website

For a local business with one or two location I recommend adding it sitewide in one fell swoop. If you are using WordPress this can be added to the header.php file or footer.php file but this will depend on how your site was originally built.

If selecting the header or footer it should be at the end of your file content. In most WP sites dashboard, select >> Appearance >> Editor.

 

Adding Local Business Structured Data to Website - Online Ownership

 

If you cannot locate the header or footer files and the CMS use blocks, add an <HTML> block to your footer and add the structured data within <div> < /div>.

As a last resort you can past on a page by page basis, again by adding within <div> </div> at the bottom of each page.

 

<div>

<script type="application/ld+json">
   {
  	"@context": "http://schema.org",
  	"@type": "LocalBusiness",
    "image": "Image URL",
    "priceRange" : "Price Range",
  	"address": {
    "@type": "PostalAddress",
    "streetAddress": "First Line Address",
    "addressLocality": "Town",
    "addressRegion": "State ",
    "postalCode":"Post Code"
    
  	},
  	"description": "Brief Description of Business",
  	"name": "Name of Business",
    "openingHours": "Mo-Fr 09:00-17:00",
  	"telephone": "0800 000 000",
  	"email": "info@yourdomain",
    "url": "https://www.yourdomain.co.uk",
    "hasMap": "Short link direct from your GMB listing",
    "sameAs" : [
    "Social media channel", 
   “Social media channel”


   ]
     }
   }
</script>

</div>

Test all your implementations with Google’s structured data testing tool.

 

Comments are closed.