Search engine optimization (SEO) refers to a set of best
practices that you can follow to allow your website to be in the best
possible place in a search engine.In general, typical desktop SEO techniques apply to mobile websites,
too, but some extra care must be taken. As we’ve already discussed,
generating too much code (metadata)
and too much text for keyword crawling is not the best solution for the
mobile web.
The first thing we need to understand is that mobile search users
are not the same as desktop search users. Mobile users are typically
searching for something very specific, and we should do our best to
facilitate access to those resources.
Mobile search engines (Google, Yahoo!, Bing) localize the search
results, so if your service is location-based, you should make sure that
your location is properly defined in your text and code. In mobile search
engines, the user only types a few characters and the engine tries to
suggest the best possible results based on location and previous results,
with mobile-specific content given priority.
Note: If your mobile website gets content using Ajax, you should
implement Google’s proposal for making the content being indexed
crawlable. You can find more information about this at http://code.google.com/web/ajaxcrawling.
Search engines like Google will try to serve mobile-specific content
first, but if someone is looking for the exact name of your application
and Google doesn’t know that you have a mobile website, the user will be
redirected to your desktop site or to a transcoded mobile version of it
produced by a Google server.
If you appear in the search engine’s databases, you will also be
found using the native applications that many search engines are
developing, including voice-powered search applications.
1. Spiders and Discoverability
The first problem is how to make your mobile website known
to the search engines. This can be different depending upon whether you
already have a desktop website that has been crawled or not.
If you already have a desktop website, you can give search engines
the URL of your mobile site using the alternate link method:
<link rel="alternate" media="handheld" href="http://m.yoursite.com" />
You can also add your mobile site manually, using these
URLs:
1.1. Mobile Sitemaps
Google has created an extension to the Sitemap protocol
(http://sitemaps.org) for mobile web content
discoverability, called Mobile Sitemaps. After creating an account in
Google Webmaster Central (http://www.google.com/webmasters), you can add your
mobile site to Google’s database. You will need to verify that you are
the owner of the site, by inserting a temporal metatag or HTML file in
your site.
Note: Googlebot-Mobile uses the Accept HTTP header to determine whether a
site delivers mobile content types. If you want to be sure that the
bot can access your site, you can also check that the User-Agent header contains Googlebot-Mobile. Some sites will only
allow access to mobile devices, and while Googlebot-Mobile tries to
emulate such a device it is not always successful in gaining access
unless it is specifically allowed.
Once your site has been validated, you can submit a Sitemap for
it. If your mobile site is targeted to only one country using a
non-country top-level domain (like .com.mobi), you can also define the geographic target
for which your mobile site is prepared. or
Note: Check the Sitemaps documentation at http://sitemaps.org for full tag and option
support.
A Mobile Sitemap is an XML file, based on the Sitemap standard,
that lists the mobile URLs for your site (XHTML, XHTML MP, WML,
cHTML). You can provide URLs for both mobile and non-mobile versions
depending on the headers, but you should not list non-mobile-only
URLs. A sample Sitemap file looks like this:
<?xml version="1.0" encoding="UTF-8" ?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"
xmlns:mobile="http://www.google.com/schemas/sitemap-mobile/1.0">
<url>
<loc>http://m.yourdomain.com/</loc>
<mobile:mobile/>
</url>
</urlset>
You should provide one url
element for each mobile URL and page, including the mobile:mobile empty tag. If you have many
versions using different URLs (for iPhone, WML, etc.), you should
provide them all in the same file.
Note: To check whether your website is listed in Google Mobile,
visit http://m.google.com with a mobile device
and use the search operator site:your_domain.
The Google Webmaster Team also suggests detecting
Googlebot-Mobile in your desktop site and redirecting it to the
mobile-specific version of the same page. For example, for information
about a product X in your desktop site, you should redirect the bot to
the mobile URL displaying information about that product. Otherwise,
Google will use a transcoder on the desktop page, as shown in Figure 1.
2. How Users Find You
Search engines are not the only way for users to discover
your mobile website. Obviously, offline marketing is always welcome, but
there are also other online features we should implement to facilitate
discoverability. These include advertising the new mobile website to
your current desktop visitors and implementing newsletters and feed
readers.
The first problem to tackle is simplifying the user’s first access
to the mobile website. Many mobile users still don’t know how to go to a
URL if it is not on the carrier’s home page, and many others will not
want to type a long URL on a numeric keypad device.
2.1. SMS invitation
A good solution is to include in your desktop website a
form to collect the user’s phone number and then send him a WAP Push or an SMS link. A WAP Push is a special message
with a URL inside. This is generally a premium SMS, and some carriers
don’t allow sending them from a website.
An SMS link is just a normal SMS with a link inside. Almost
every modern device with a browser will autodetect a URL inside a text
message if it begins with wwwhttp:// and will convert the URL
into a link that the user can click after receiving the SMS (see Figure 1). or
The big question, is how do we send an SMS from a website? The
answer is not what you might expect—there isn’t a simple or free way
to do it. We have to use an SMS provider or gateway that, with a
simple web service call, will send the message to users in one country
or worldwide. We will have to pay for that SMS, but depending on the
business, a new mobile web user will probably be worth the small
expense.
Note: Some SMS gateway providers also allow inbound SMS messages
that will be routed to your scripts or will be accessible via an
API. This could be an excellent solution to receive queries by SMS
to your service.
Some SMS gateway providers include:
Alternatively, you can install a 3G or GPRS modem on your server
or in any machine and develop a little SMS gateway of your own, with a
corporate or personal account. A widget or an application on your
device could also work, although this is not the preferred way.
Note: Zeep Mobile (http://www.zeepmobile.com) offers a free,
ad-supported SMS API for sending and receiving messages, but it only
works in the United States at the time of this writing. You can also
pay for an ad-free plan.
You can also use carrier developer networks and the
up-and-coming OneAPI to send messages to known networks.
2.2. Email invitation
For newer smartphones with email support, an alternative to SMS
is to send the user a free email message containing the mobile
URL.
2.3. Mobile Tiny URL
To enable the user to type your URL easily, you can use the free
service Mobile Tiny URL (http://www.mobiletinyurl.com), shown in Figure 3. It converts any
URL into a short form that can be typed with only 13
keypresses on a numeric keypad. By default the generated short URL
doesn’t work in desktop browsers or on iPhone devices, but you can add
desktop and iPhone support. These short URLs are useful for
publication on desktop websites and in printed advertising.
For example, instead of typing m.safaribooksonline.com,
a mobile user can type ad.ag/admtgp
(saving 57 keypresses). As you can see, the generated URL uses only
the first letters associated with every key on the keypad, to speed up
entry. Even apparently simple URLs like google.com will require 37 keypresses
on a mobile phone, and you can save 24 by using the compressed URL
(ad.ag/tgtmjg).
Warning: The Mobile Tiny URLs aren’t intended to be URLs that you will
remember; they are intended for you to have in front of you while
you are typing them in.
2.4. QR codes
A QR code is a two-dimensional barcode (also called a
matrix code) that allows the
storage of several bytes in a graphic. These codes have many uses, one
of which is to provide a URL that can be read by devices with bar code
readers. Many Nokia and Android devices come with these readers
preinstalled, but on other devices, users will need to download one. A
sample QR code is shown in Figure 4.
Note: A QR code can contain 4296 alphanumeric characters, or 2953
bytes for binary data. Some devices also support other data inside,
like contact information (for example, a vCard file).
They are well known in mobile advertising; many campaigns use
these codes in newspapers, on street signs, and even on
t-shirts.
To create a QR code, you can use any of these free
services:
If you need to generate a QR code dynamically, there are
libraries for almost all server-side platforms that will generate the
right image for you.
The free Google Chart API (http://code.google.com/apis/chart) allows you to
generate free QR codes using an XHTML img tag with parameters.
There is also WordPress plug-in (http://wordpress.org/extend/plugins/qr-code-tag) that
creates a QRCode widget for inserting in your blog).
3. User Fidelizing
Once you’ve gotten a user to your mobile website, how do
you encourage her to come back and maintain an interest in your service?
If you are not providing a must-use service (such as online banking or
email), you may want to implement some of the following techniques to
“fidelize” your users:
Encourage the user to add your site to her bookmarks, or to
the home screen on selected browsers (like iPhone or
Android).
Offer the user a widget or mobile client with richer
features.
Offer the user a shortcut to download for the applications or
home menu.
Offer the user a home widget on supported devices, with
automatic updates.
Create a mobile RSS news feed.
Provide an SMS alert subscription.
Creating a widget for your mobile website could be the key to getting
the user back, via the icon in her applications menu. This can be useful
even if the widget is just a void container for the same website.
Note: A great feature to incorporate into a widget or mobile client is
friend recommendation using the Contacts and SMS APIs available on
some platforms.
3.1. Web shortcuts
A web shortcut is a native application or
widget that has an icon in the menu that launches the browser when it
is activated, like the one shown in Figure 5. Adding a
shortcut is better than adding a bookmark, because it will be
installed just like any other application.
You can create Java ME, Windows Mobile, BlackBerry, and widget
versions to cover all the possible shortcut platforms.
Note: You can create a free shortcut for your website using the free
http://www.widgen.com service.
3.2. RSS
Some browsers (Opera, Bolt, NetFront, Symbian) detect feed
metatags and offer the user the option to subscribe to the feeds to
get updates on the sites that provide them. To offer this service, you
should provide an RSS file with a mobile web link inside:
<link rel="alternate" type="application/rss+xml" title="Mobile RSS"
href="http://mobilexweb.com/rss.xml" />
If you have an RSS file for your mobile content, you can create
a free mobile client reader at http://www.widgen.com and offer it as a download from
your site.
3.3. Open Search
If your website provides a search engine, you should supply an
Open Search description protocol file that will allow users of
compatible devices to add your engine to the list of possible search
engines. Not too many mobile browsers support this format at the time
of this writing, but a mobile extension is in draft by the Open Search
organization (http://opensearch.org).
To define an Open Search declaration for discoverability, use
the following link tag:
<link rel="search" type="application/opensearchdescription+xml"
href="http://mobilexweb.com/opensearch.xml" />
The Open Search descriptor file will look like this:
<?xml version="1.0" encoding="UTF-8"?>
<OpenSearchDescription xmlns="http://a9.com/-/spec/opensearch/1.1/">
<ShortName>Mobile Web Search</ShortName>
<Description>Search in our mobile web</Description>
<Url type="text/html"
template="http://mysite.com/?q={searchTerms}"/>
<Image height="64" width="64" type="image/png">
http://example.com/icon.png
</Image>
<Language>en-us</Language>
</OpenSearchDescription>
3.4. BlackBerry Web Signals
RIM offers a push service called Web Signals that can
push real-time information to BlackBerry devices. The customer has to
follow an opt-in process to subscribe to your content. When you want
to push information you send an icon and a URL to the RIM servers, and
they deliver the information to the subscribed users. The mechanism
can be used for public information for end users (news, weather,
traffic) or for private information (corporate alerts).
To see more information and start providing Web Signals to
users, go to http://www.mobilexweb.com/go/websignals.
Note: Apple, Android from 2.2, and Palm offer push service
notifications for applications distributed in their stores. We can
also use these if we provide hybrid web applications.