Showing posts with label Advanced SEO. Show all posts
Showing posts with label Advanced SEO. Show all posts

Friday, 5 September 2014

Prevent search engines from displaying DMOZ data in search results for your site


One source Google uses to generate snippets is the Open Directory Project. You can direct us not to use this as a source by adding a meta tag to your pages.

To prevent all search engines (that support the meta tag) from using this information for the page's description, use the following:
<meta name="robots" content="NOODP">


To specifically prevent Google from using this information for a page's description, use the following:
<meta name="googlebot" content="NOODP">


If you use the robots meta tag for other directives, you can combine those. For instance:
<meta name="googlebot" content="NOODP, nofollow">


Note that once you add this meta tag to your pages, it may take some time for changes to your snippets to appear in the index.

Source: https://support.google.com/webmasters/answer/35624?hl=en

Friday, 30 May 2014

Impact of Design on Conversions (InfoGraphic)

Here are 8 important tips to increase your conversion rate only by landing page (re)design: 

  • Let your primary conversion target dominate the page.
  • Test using an impactful and contrasting photo as your hero shot, and mirror the palette choice and contrast levels on your CTA (Call 2 Action) to draw a parallel and guide the visitor from the emotional element to the conversion goal.
  • Use photography of people or animals on your landing page and have them stare directly at your CTA with either the angle of their head or their eyes (in a closeup).
  • Go a bit punk and try something radical on your landing pages.
  • Use strong dynamic shapes to constrain your points of interest.
  • Call attention to your most important page elements by using strangely placed and angled arrows. Tie a sequence of arrows together to define a path for the visitor to follow, ending at your CTA.
  • Design converging lines to draw people to your Call To Action. Triangles are the most dynamic of all shapes, and their natural tendency to point make them a special design tool (in the same way that an arrow is a more intricately designed pathway).



Source: Unbounce

Tuesday, 29 April 2014

Top 25 Review/Citation Sites to Submit Your Local Business


The top 25 review/citation sites to submit your business contact information to. Accuracy and consistency is vitally important.

  1. Google+ Local
  2. Yahoo Local 
  3. Bing Local
  4. YP.com
  5. Yelp
  6. Manta 
  7. Show Me Local 
  8. Merchant Circle 
  9. SuperPages 
  10. Mojo Pages 
  11. EZ Local 
  12. Angie’s List 
  13. HotFrog 
  14. Foursquare 
  15. Chamber of Commerce 
  16. yellowbot.com 
  17. kudzu.com 
  18. brownbook.com 
  19. B2B Yellowpages 
  20. Directory Central  
  21. MapQuest 
  22. Local.com 
  23. Dexknows.com 
  24. Citysearch,com uses Express Update 
  25. nSphere 




Monday, 7 April 2014

Updates on The Knowledge Graph Results on Google SERP

Did Google move some of the knowledge graph results down the page to throw a duplicate ad graph above it?!


Monday, 31 March 2014

Main 4 Components of SEO: The SEO Fork

SEO is like a fork with 4 tines. It cannot work with less to be efficient.

The same is with SEO, it is the combination of 4 main branches:


1- Content (Unique, Informative, Fresh, Attractive, Specialized, Related)
2- Onsite actors (Meta Tags, UI, Speed, interlinking)
3- Social Engagement (Likes, Shares, Retweets, Pluses)
4- Backlinks (qualitative, relevant, diverse, natural, use anchor texts not KWs)



SEO FORK

Thursday, 27 March 2014

Let People Know "In Real-Time" When Your blog is Updated with PubSubHubbub

As a blogger (Publisher) you want to notify the cyberspace about your new blog post, first to get it crawled faster, and second to avoid your article being stolen by another Blog and it gets crawled and ranked before you do.

That is when PubSubHubHub comes in handy as it sends realtime notifications to blogfeed hubs when you update your blog.

A simple, open, server-to-server webhook-based pubsub (publish/subscribe) protocol for any web accessible resources.

Pubsubhubbub is used for content publishing by many websites, including all blogs served by blogger.com and WordPress.com, news sites including CNN and Fox news, and social networks like diaspora

Parties (servers) speaking the PubSubHubbub protocol can get near-instant notifications (via webhook callbacks) when a topic (resource URL) they're interested in is updated.

The protocol in a nutshell is as follows:
  • An resource URL (a "topic") declares its Hub server(s) in its HTTP Headers, via Link: <hub url>; rel=”hub” . The hub(s) can be run by the publisher of the resource, or can be acommunity hub that anybody can use: Google's, or Superfeedr.
  • A subscriber (a server that's interested in a topic), initially fetches the resource URL as normal. If the response declares its hubs, the subscriber can then avoid lame, repeated polling of the URL and can instead register with the designated hub(s) and subscribe to updates.
  • The subscriber subscribes to the Topic URL from the Topic URL's declared Hub(s).
  • When the Publisher next updates the Topic URL, the publisher software pings the Hub(s) saying that there's an update.
The protocol is decentralized and free. No company is at the center of this controlling it. Anybody can run a hub, or anybody can ping (publish) or subscribe using open hubs.
Google and Superfeedr offer a public and scalable open hub for anybody to use.




How to Use PubSubhubhub with your feeds?

  • Add an //atom:link tag under //atom:entry for Atom feeds or under //rss:rss/channel for RSS feeds. The //atom:link tag should haverel attribute set to hub and href attribute set to https://pubsubhubbub.appspot.com/
  • Alternatively, your feed can be served with two Link headers:
    • one with rel attribute set to hub and href attribute set to https://pubsubhubbub.appspot.com/
    • one with rel attribute set to self and href attribute set to the feed URL of the feed
  • The above is covered in more detail in the PubsubHubbub 0.4 specification.
  • Whenever new content is added to a feed, notify the hub. This is accomplished by sending a POST request tohttps://pubsubhubbub.appspot.com/ with Content-Type: application/x-www-form-urlencoded and two parameters encoded in the body:
    • hub.mode equal to publish
    • hub.url equal to the feed URL of the feed that has been updated. This field may be repeated to indicate multiple feeds that have been updated

Hub debug

From here you can,
  • Subscribe to a feed or debug your subscriber
  • Publish a feed or debug your published feeds

If you are a WordPress Blogger and wants to Ping the hub easily, there is a Plugin for that.
https://wordpress.org/plugins/pubsubhubbub/

The Plugin does the following:

Sends realtime notifications when you update your blog
Supports multi-user installations (WordPress MU)
Supports multiple hubs
Supports all of the feed formats used by WordPress, not just ATOM and RSS2
Supports latest spec (Version 0.4)
Announces which hubs you are using by adding <link rel="hub" ...> declarations to your template header and ATOM feed
Adds <atom:link rel="hub" ...> to your RSS feeds along with the necessary XMLNS declaration for RSS 0.92/1.0

Wednesday, 26 March 2014

Dwell Time as an SEO Ranking Factor

Have you heard of the term Dwell time before?
Maybe you have not.
How about 'long clicks' Vs. 'Short Clicks' ?
Still, no clue?

Google pays very close attention to “dwell time”: how long people spend on your page when coming from a Google search. This is also sometimes referred to as “long clicks vs short clicks”. If people spend a lot of time on your site, that may be used as a quality signal.



Knowing that, it is very important to focus on the quality of the presented content. It has to be informative, exciting, and engaging. 
You should also pay a lot of attention to Navigability and user experience on the site. 
Google Analytics is a great help understanding all such metrics as you do not need to lose your rankings because of the traffic you get; once you lose that, you will have neither. 



Friday, 21 February 2014

The Future of SEO is Taking your Visitors to Your Company's Kitchen

Many of you must have heard of Google's new R&D projects to emulate human interactions on website to base their ranking algorithm on the user experience and whether the visited site offered a perceived value or not.

That is why the future of SEO will not be keywords or backlinks but "Users"
Therefore, site owners need to offer a true user experience to their visitors by being more transparent with them. i.e. involving them in the kitchen :


So, Forget about the famous quote, attributed to Otto von Bismarck: 
Laws are like sausages, it is better not to see them being made.

How To Be More Transparent?

  1. Add a company page.
  2. Add images to your company page (let your visitors see you.)
  3. Add team video. Let your visitors see and hear you and your team
  4. Photos or video of your office. Let your visitors see where you work and what you offices look like.
  5. Don’t hide your phone number. This is a huge red flag.
  6. Integrate your social media accounts
  7. Show customer reviews and testimonials
  8. Embed a Google map of your office
  9. Show a photo and name of your sales person on the sales or contact page
  10. Don’t use stock photos of people in offices. Instead take real photos of your people in your offices.
  11. If you sell services, then describe your process
  12. If you sell products, then show how they get made

(I know a Toronto based SEO company called Powered By Search that has an animated photo of their office on the Main header on the Home Page showing visitors their employees while working.) 


Here are some extra guidelines from the Stanford Web Credibility Project: 






Resources:

Wednesday, 12 February 2014

How to find a Broken Backlink? The 404 Analysis Method

You may ask a client, supplier, blogger or whatever to add a link to one of your pages to get some link juice or referrals, but they may do a typo and add a wrong link URL to your site that when clicked it ends visitors up on a 404 not found page. So, how can you know those bad links?!


Here are some ideas to track those links and report them:

1- In the header template of your 404 page, find this line in your Google Analytics Tracking Code: _gaq.push(['_trackPageview']); Then change it as follows: _gaq.push(['_trackPageview','/404error/?url=' + document.location.pathname + document.location.search + '&ref=' + document.referrer]); What's happening here is we're creating a virtual pageview that starts with /404error/ (you can name it anything you want) and then appending 2 made-up parameters to help us spot the source of the problem:
  • · "url=" will catch the URL which a visitor attempted to access. 
  • · "ref=" will catch the referring page. 
Here's what it will look like in your reports (when you do a search for "404error")



2- Another way is use Raven's GA Config tool. Simply add your GA account number then copy the Google Analytics tracking script just before the </head> tag on your 404 page (not your entire website). 
The code will be like this:

Asynchronous

<script type="text/javascript">
  var _gaq = _gaq || [];
 _gaq.push(['_setAccount', 'UA-XXXXX-X']);
  _gaq.push(['_trackPageview', '/404.html?page=' + document.location.pathname + document.location.search + '&from=' + document.referrer]);

  (function() {
    var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
    ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
    var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
  })();
</script>

Traditional ga.js

<script type="text/javascript">
var gaJsHost = (("https:" == document.location.protocol) ? " https://ssl." : "http://www.");
document.write(unescape("%3Cscript src='" + gaJsHost + " google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
</script>
<script type="text/javascript">
try{
var pageTracker = _gat._getTracker("UA-XXXXX-X");
pageTracker._trackPageview("/404.html?page=" + document.location.pathname + document.location.search + "&from=" + document.referrer);
} catch(err) {}
</script>

3- More ways:
http://ralphvanderpauw.com/digital-analytics/google-analytics-best-to-track-404-error-pages/ 


Tuesday, 11 February 2014

Use rel="alternate" hreflang="x" annotations to Serve the Correct Language or Regional URL to Searchers!

The rel='alternate' attribute enables you to tell search engines that a web page is available in different language versions. For example, you could add the following to the head section of a web page if that page is available in English, German and French:

<link rel=”alternate” href=”http://en.example.com” hreflang=”en” />
<link rel=”alternate” href=”http://de.example.com” hreflang=”de” />
<link rel=”alternate” href=”http://.fr.example.com” hreflang=”fr” />

All other languages can be directed to the default version of your website:

<link rel=”alternate” href=”http://example.com” hreflang=”x-default” />

Some example scenarios where rel="alternate" hreflang="x" is recommended:
  • You keep the main content in a single language and translate only the template, such as the navigation and footer. Pages that feature user-generated content like a forums typically do this.
  • Your content has small regional variations with similar content in a single language. For example, you might have English-language content targeted to the US, GB, and Ireland.
  • Your site content is fully translated. For example, you have both German and English versions of each page.

Using language annotations

Imagine you have an English language page hosted at http://www.example.com/, with a Spanish alternative at http://es.example.com/. You can indicate to Google that the Spanish URL is the Spanish-language equivalent of the English page in one of three ways:
  • HTML link element in header. In the HTML <head> section of http://www.example.com/, add a link element pointing to the Spanish version of that webpage at http://es.example.com/, like this:
    <link rel="alternate" hreflang="es" href="http://es.example.com/" />
  • HTTP header. If you publish non-HTML files (like PDFs), you can use anHTTP header to indicate a different language version of a URL:
    Link: <http://es.example.com/>; rel="alternate"; hreflang="es"
  • Sitemap. Instead of using markup, you can submit language version information in a Sitemap.
If you have multiple language versions of a URL, each language page must identify all language versions, including itself.  For example, if your site provides content in French, English, and Spanish, the Spanish version must include a rel="alternate" hreflang="x" link for itself in addition to links to the French and English versions. Similarly, the English and French versions must each include the same references to the French, English, and Spanish versions.
You can specify multi-language URLs in the same domain as a given URL, or use URLs from a different domain.
It's a good idea to provide a generic URL for geographically unspecified users if you have several alternate URLs targeted at users with the same language, but in different locales. For example, you may have specific URLs for English speakers in Ireland (en-ie), Canada (en-ca), and Australia (en-au), but want all other English speakers to see your generic English (en) page, and everyone else to see the homepage. In this case you should specify the generic English-language (en) page for searchers in, say, the UK. You can annotate this cluster of pages using a Sitemap file or using HTML link tags like this:
<link rel="alternate" href="http://example.com/en-ie" hreflang="en-ie" />
<link rel="alternate" href="http://example.com/en-ca" hreflang="en-ca" />
<link rel="alternate" href="http://example.com/en-au" hreflang="en-au" />
<link rel="alternate" href="http://example.com/en" hreflang="en" />
For language/country selectors or auto-redirecting homepages, you should add an annotation for the hreflang value "x-default" as well:
<link rel="alternate" href="http://example.com/" hreflang="x-default" />

Supported language values

The value of the hreflang attribute identifies the language (in ISO 639-1 format) and optionally the region (in ISO 3166-1 Alpha 2 format) of an alternate URL. For example:
  • de: German content, independent of region
  • en-GB: English content, for GB users
  • de-ES: German content, for users in Spain
Do not specify a country code by itself! Google does not automatically derive the language from the country code. You can specify a language code by itself if you want to simplify your tagging.  Adding the country code after the language to restrict the page to a specific region.  Examples:
  • be: Belarusian language, independent of region (not Belgium French)
  • nl-be: Dutch for Belgium
  • fr-be: French for Belgium 
For language script variations, the proper script is derived from the country. For example, when using zh-TW for users zh-TW, the language script is automatically derived (in this example: Chinese-Traditional). You can also specify the script itself explicitly using ISO 15924, like this:
  • zh-Hant: Chinese (Traditional)
  • zh-Hans: Chinese (Simplified)
Alternatively, you can also specify a combination of script and region—for example, usezh-Hans-TW to specify Chinese (Simplified) for Taiwanese users.
Finally, the reserved value "x-default" is used for indicating language selectors/redirectors which are not specific to one language or region, e.g. your homepage showing a clickable map of the world.

Common Mistakes

Important: Make sure that your provided hreflang value is actually valid. Take special care in regard to the two most common mistakes:
In general you are advised to sign up with your site to Webmaster Tools. This enables you to receive messages in regard to wrong annotations.
Example Widgets, Inc has a website that serves users in the USA, Great Britain, and Germany. The following URLs contain substantially the same content, but with regional variations:
  • http://www.example.com/ Default page that doesn't target any language or locale; may have selectors to let users pick their language and region.
  • http://en.example.com/page.html English-language homepage. Contains information about fees for shipping internationally from the USA.
  • http://en-gb.example.com/page.html English-language; displays prices in pounds sterling.
  • http://en-us.example.com/page.html English-language; displays prices in US dollars.
  • http://de.example.com/seite.html German-language version of the content
rel="alternate" hreflang="x" is used as a page level, not a site level, and you need to mark up each set of pages, including the home page, as appropriate. You can specify as many content variations and language/regional clusters as you need.
To indicate to Google that you want the German version of the page to be served to searchers using Google in German, the en-us version to searchers using google.com in English, and the en-gb version to searchers using google.co.uk in English, userel="alternate" hreflang="x" to identify alternate language versions.
Update the HTML of each URL in the set by adding a set of rel="alternate" hreflang="x" link elements. For the default page that doesn’t target any specific language or locale, add rel="alternate" hreflang="x-default":
<link rel="alternate" hreflang="x-default" href="http://www.example.com/" />
<link rel="alternate" hreflang="en-gb" href="http://en-gb.example.com/page.html" />
<link rel="alternate" hreflang="en-us" href="http://en-us.example.com/page.html" />
<link rel="alternate" hreflang="en" href="http://en.example.com/page.html" />
<link rel="alternate" hreflang="de" href="http://de.example.com/seite.html" />
This markup tells Google's algorithm to consider all of these pages as alternate versions of each other.

Monday, 3 February 2014

The Guestographic Formula: Effective Way to Get Effective Backlinks

Have you heard of the term Guestographic before?
Guestographic is simply about creating this formula successfully:

Great content + Targeted Outreach + Added Value = Links


Here are some important tips to make the Guestographic formula Working:

First: The On-Page Strategy 

  1. The content has to be informative and valuable
  2. The design has to be attractive and professional
  3. Use Gifographics (animated infographics)
  4. Make it sharable (add social media buttons and a Pin it button)
  5. Make it embedable. For Wordpress sites use the embed code generator plugin or use generators like SEO gadget embed code generator or Siegemedia embed code generator. (sometimes if you have a JavaScript code to be embedded on a WordPress site you will need to use the 'Insert HTML snippet Plugin' 

Second: The off-Page Strategy 

  1. Submit the infographic on Infographic submission sites (another list) or use a paid service to submit it for you
  2. Find sites that write about your infographic’s topic and show them the infographic (you can also offer to write an introduction for it) 

How Social Signals Affect SEO - Gifographic (Animated Infographic)

The new Google Algorithm is now giving a high leverage to backlinks from Social Media (i.e. Social Signals). It could be likes, shares, comments, views, subscriptions, pins, retweets, etc.

Here is an exciting animated infographic (Gifographic) that shows how social signals impact SEO


How Social Signals Impact Search Engine Rankings
Courtesy of: Quick Sprout

Wednesday, 29 January 2014

Search Engines Ranking Factors - Survey and Correlation Data by MOZ

Every two years, Moz surveys the opinions of dozens of the world's brightest search marketers and runs correlation studies to better understand the workings of search engine algorithms. They gather this data to gain insight into the factors that may help—or hurt—a website's visibility in search engines. Note that these factors are not "proof" of what search engines use to rank websites, but simply show the characteristics of web pages that tend to rank higher.


Friday, 24 January 2014

SEO during site downtime or Maintenance

If you take down your website temporarily, you must inform search engines such as Google. As you could read above, this is done by utilizing the HTTP status code: 503 Service Unavailable, that informs the search engines that the server is temporarily unavailable. To do this one must first create a file that returns a 503 status code on the server. When the search engine sees this, it will understand the situation. This can be done by copying the four lines below into Notepad (or the like) and saving it as 503.php. You must then place this file in the root of your server.

The first two lines tell us that it is a 503 status code, and the last line is used to tell when the website is expected to be online again. Google understands this message, so it is possible to tell Google when to visit the website again. You must either provide a number (seconds) or a date. If you live in Denmark like I do and you expect to return on the 5th of January 2012, at 14:00, you must put down:



Notice that I wrote 13:00:00 in the code, even though I wrote 14:00:00 above. This is due to the fact that the time must be provided in GMT/UTC, which is, in my case, 1 hour behind local time.

But it is not enough to just put a 503 message on your server. You will receive visitors (Google included) from many different sources and to all sorts of pages of your website. They must all be redirected to the message explaining that the website is temporarily closed.

On an Apache/Linux server, this can be easily solved by using a .htaccess file to redirect all the pages towards the 503.php file. The .htaccess file is often used for 301 redirects, but that is not our purpose here. We will use a 302 redirect. You may have been previously warned about using this sort of redirect, and for good reason. It can do a great deal of damage if not used correctly. But in this case, it must be used, and in fact a 301 redirect would be detrimental in its place.

Save the 6 following lines as a .htaccess file and place it in the root of your server as well.
The 'R' in the last line indicates that this is a 302 redirect. R is 302 by default. To create a 301 redirect, it would have said [R=301, L]. The clever thing about this file, however, is that we can give ourselves access to the site and simultaneously show everyone else a 503 message. Let’s say you have the following IP address: 12.345.678.910. You then put the numbers in line 4 as shown below:

When you have placed the two files (503.php and .htaccess) on your server, you’re done. You now have peace and quiet to tinker with your website, as long as you leave those two files in the root of your server – and if Google visits, they’ll know that the site will be back later, and you’ve even let them know when to try again.

But what about passing on the message to your visitors?

How to tell your visitors that the website is only closed temporarily.

With a few additions to the 503.php file, which we made just before, we can pass on a message to visitors:
Source: http://moz.com/blog/how-to-handle-downtime-during-site-maintenance 

Thursday, 23 January 2014

A JavaScript code to Track Keyword Ranking using Analytics Events

I found this method in a post by Justin Cutroni, a notable author of many Analytics book. 
It details a way to measure your website’s rank for certain keywords by installing custom code. It requires that you have Google Analytics installed on your site and a little programming knowledge (or at least the knowledge of how to place the code).

This method uses custom code and Google Analytics events to collect and report on keywords that people used to find your site.

Here is code that will look at the referring URL from organic Google search,
Code:
<script type=”text/javascript”>
if (document.referrer.match(/google\.com/gi) && document.referrer.match(/cd/gi)) {
  var myString = document.referrer;
  var r        = myString.match(/cd=(.*?)&/);
  var rank     = parseInt(r[1]);
  var kw       = myString.match(/q=(.*?)&/);
 
  if (kw[1].length > 0) {
    var keyWord  = decodeURI(kw[1]);
  } else {
    keyWord = "(not provided)";
  }
 
  var p        = document.location.pathname;
  _gaq.push(['_trackEvent', 'RankTracker', keyWord, p, rank, true]);
}
</script>
Note that the above section of code will only pull keywords from referring URL’s from Google Organic search.

An explanation of the code


This section of code parses the keyword out,
Code:
var myString = document.referrer;
var r = myString.match(/cd=(.*?)&/);
var rank = parseInt(r[1]);
var kw = myString.match(/q=(.*?)&/);
and this section of code checks to see if the keyword is (not set)or (not provided),
Code:
if (kw[1].length > 0) {
var keyWord = decodeURI(kw[1]);
} else {
keyWord = "(not provided)";
}
And this snippet sends the keyword data to Google Analytics using an event,
Code:
_gaq.push(['_trackEvent', 'RankTracker', keyWord, p, rank, true]);
All of this code goes AFTER your standard analytics tracking code which should be installed in the head of your web pages.

If you are unfamiliar with event tracking you can learn more about it here,

About Events - Analytics Help

Tracking events is pretty simple once you understand how to do it. These are user actions that can be tracked separately and they include things as simple as a click on an external link to downloads or video views. Events are a great way to track extra things on your site that might otherwise have no data collected about them. Using event tracking is a preferred method over tracking virtual pageviews.

When you set up events, each one will have 5 parts.
Category: In the snippet above, the Category is called RankTracker. Note that this can be called anything you want, just be sure and change it in your code snippet before installation. This is how you will identify data in your analytics reports under content -> events -> top events. If you change it, just remember to make it unique and something that will be easy for you to identify later.
  • Action: The action in the code snippet above is KeyWord.
  • Label: In the snippet, this is the “p” in the snippet above and identifies the landing page. Note that this value is optional. You can use it to provide additional information about the event. In this case it may be helpful to know what page a visitor landed on to see what pages are ranking for specific key terms in search. For instance maybe you are optimizing a certain page for a particular keyword. The label will help you identify your progress.
  • Value: In the snippet, this is the SERP rank. The rank of the search engine result will be recorded as the value of the event in your reports.
  • Non-interactive: set this to TRUE

This is a truly innovative technique as it gives you real data about the keywords that are driving people to your site through organic search. One thing you have to remember is that this only works when people are visiting your site through organic search. If you don’t receive a lot of organic search traffic, you may not get much use out of the code.

Some important tweaks and notes

Instead of using document.referrer.match(/google\.com/gi) to detect the referring URL you can use document.referrer.match(/google\./gi) to match foreign versions of Google as well as google.com

If you had to install the basic analytics tracking code on all pages of your site because you aren’t using a template or any kind of include file, you will have to do the same with the code snippet to track keywords.

This script cannot be loaded using the Google tag manager

You can find the original post with comments here, A New Method to Track Keyword Ranking using Google Analytics

Complete Guide on KML Geography Sitemaps

If your business has a physical location, you would need to tell Google about it, not only to gain higher authority and credibility, but to better rank on the results page.

Standard SEO requires that a website should have a sitemap.xml file to help search engine robots (i.e. GoogleBot) to crawl a site and index it.

Sitemaps concept has evolved that we currently have several types of specific sitemaps; news sitemaps, Video sitemaps, and geography sitemaps.

Geography sitemap file may also called KML (Keyhole Markup Language) [Do you remember the days when Google Earth was called Keyhole? Well, that is it]

Keyhole Markup Language (KML) is an XML notation for expressing geographic annotation and visualization within Internet-based, two-dimensional maps and three-dimensional Earth browsers.

KML was developed for use with Google Earth, which was originally named Keyhole Earth Viewer. It was created by Keyhole, Inc, which was acquired by Google in 2004. KML became an international standard of the Open Geospatial Consortium in 2008. Google Earth was the first program able to view and graphically edit KML files.

geography sitemaps image KML file


You can create KML files with the Google Earth user interface, or you can use an XML or simple text editor to enter "raw" KML from scratch. 

KML files and their related images (if any) can be compressed using the ZIP format into KMZ archives. To share your KML and KMZ files, you can e-mail them, host them locally for sharing within a private internet, or host them publicly on a web server. Just as web browsers display HTML files, Earth browsers such as Google Earth display KML files. 

Once you've properly configured your server and shared the URL (address) of your KML files, anyone who's installed Google Earth can view the KML files hosted on your public web server. Many applications display KML, including Google Earth, Google Maps, Google Maps for mobile, NASA WorldWind, ESRI ArcGIS Explorer, Adobe PhotoShop, AutoCAD, and Yahoo! Pipes.

The KML file specifies a set of features (place marks, images, polygons, 3D models, textual descriptions, etc.) for display in Here Maps, Google Earth, Maps and Mobile, or any other geospatial software implementing the KML encoding. Each place always has a longitude and a latitude. 

Other data can make the view more specific, such as tilt, heading, altitude, which together define a "camera view" along with a timestamp or timespan. KML shares some of the same structural grammar as GML. Some KML information cannot be viewed in Google Maps or Mobile.

KML files are very often distributed in KMZ files, which are zipped KML files with a .kmz extension. These must be legacy (ZIP 2.0) compression compatible (i.e. stored or deflate method), otherwise the .kmz file might not uncompress in all geobrowsers. The contents of a KMZ file are a single root KML document (notionally "doc.kml") and optionally any overlays, images, icons, and COLLADA 3D models referenced in the KML including network-linked KML files. The root KML document by convention is a file named "doc.kml" at the root directory level, which is the file loaded upon opening. By convention the root KML document is at root level and referenced files are in subdirectories (e.g. images for overlay images).

An example KML document is:

<?xml version="1.0" encoding="UTF-8"?>
<kml xmlns="http://www.HaveResults.net/kml/2.2">
<Document>
<Placemark>
  <name>Have Results</name>
  <description>SEM Tools Reviews</description>
  <Point>
    <coordinates>-74.006393,40.714172,0</coordinates>
  </Point>
</Placemark>
</Document>
</kml>

 or could be more detailed like this (in Microformats):


<div class="vcard">
<h2 class="fn org">Have Results</h2>
<div class="adr">
<div class="street-address">adress</div>
<span class="locality">City</span>,
<span class="region">Quebec</span>
<span class="postal-code">123456</span>
<span class="country-name">Canada</span>
</div>
<div class="tel">00123456789</div>
</div>



or in Schema.org format:


<div itemscope itemtype="http://schema.org/LocalBusiness">
<h2><span itemprop="name">Have Results</span></h2>
<span itemprop="description">SEM Tools Reviews</span>
<div itemprop="address" itemscope itemtype="http://schema.org/PostalAddress">
<span itemprop="streetAddress">adress</span>
<span itemprop="addressLocality">city</span>,
<span itemprop="addressRegion">Province</span>
</div>
Phone: <span itemprop="telephone">00123456789</span>
</div>




You can now create a file with KML extension for the Geo sitemap. 
To notify Google of the whereabouts of your locations, proceed by taking the following steps:
  1. Upload the KML file to your domain server with FTP.
  2. Login to Google Webmaster Tools and add the Geo Sitemap. For more information about submitting the Geo Sitemap, please read the Google Help pages.
  3. Don't forget to add your address details to your website 


There are easier ways to add your GEO sitemap (KML file to your site) 

If you are using WordPress, install a plugin called WP GeoSitemap
If not, you can use the geo sitemap generator to create you a file and you just upload it and notify Google through GWMTs. (Here is the link: http://www.geositemapgenerator.com/) 


Resources:

  • https://developers.google.com/kml/documentation/
  • http://en.wikipedia.org/wiki/Keyhole_Markup_Language
  • https://developers.google.com/kml/documentation/kml_tut
  • https://support.google.com/earth/answer/148118?hl=en
  • http://en.wikipedia.org/wiki/Geography_Markup_Language



Tuesday, 21 January 2014

Google Algorithms Pets in a nutshell

Are you still getting confused between the 3 algorithms of Google; Panda, Penguin, and the Hummingbird?
which is which and which does what?
here is a simple diagram showing you the function and basic information on each:


Source: http://www.link-assistant.com/news/key-google-updates.html 


Monday, 20 January 2014

Best Analytics Solution and Page Tracking for Chrome and Firefox

   Take advantage of the power of page tagging and track important pages that indicate your business KPIs, such as the thank you page after a purchase is made. I suggest that you list all the important URLs you wish to target.
   You can use a Tool Called WASP (or Web Analytics Solution Profiler) to check if a tag was correctly inserted in your pages. When you run this extension, you can see below all the tags that are inserted in your pages and the scripts related to each.
   Wasp allows you to do quality assurance of your web analytics tags faster than ever. Test and debug your tags, save time, see detected values, find missing tags and beacons, detect double tagging, capture Flash events and export results.
   You can download it for Chrome or Firefox. 
and the Firefox Features are also here: http://webanalyticssolutionprofiler.com/firefox/features