GeoDirection is a free service that dynamically redirects internet users based on their geographic location. This JavaScript redirection tool is ideal for internet users that wish to redirect browsers based on their City, Region or Country, using Geobytes’ IP Address map technology. Further, it can also be used via the provided Geobytes’ JavaScript Variables to insert localized geographic content into a web page or JavaScript. Note: There is no need to install any special software on your web server.

Sample Redirection Script:

Sample Content Localization Script:


pages:Specifies the page that a person will be re-directed to based on their location. For example: geobyteslocationcode would re-direct visitors from the city of geobytescity to a page called geobyteslocationcode.html, geobytesinternetgeobytescode would re-direct visitors from the geobytesregion region to a page called geobytesinternetgeobytescode.html, while geobytesinternet would re-direct visitors from the country of geobytescountry to a page called geobytesinternet.html. Note: The order of precedence is city, region, country, meaning a city match overrides region, and a region match overrides country. (Alternatively, you can also direct to any specific url – click here to see the sample below.)

ext:Specifies the file extension of the page you wish to re-direct to. The default is html.

after:Specifies how long to wait before re-directing the user. Default is 0 seconds (do not wait).-1= Do not re-direct (allows you to perform your own re-direct to any page, see example)

targetpage:Sets the target page that the user will be re-directed to. The default is to re-direct the user to a page of the same name as the matching location code in the “pages” parameter. see example

-r (radius):When following a city location code, cause the script to include all surrounding cities out to the given distance. see example

variables:Specifies the variable(s) to be initialized for use in later scripts on the page. For a complete reference of the available Geobytes’ JavaScript variables see Geobytes’ JavaScript variables.
Quick example:variables=GeobytesCountry,GeobytesCity would initialize the sGeobytesCountry and the sGeobytesCity JavaScript variablesfor later use.


Code example using the Geobytes’ JavaScript variables to redirect visitors from a given Country, Region or City:

The re-direction script as shown in the examples below must be pasted into the <head></head> section of the page that you are re-directing your users from.

The following example would re-direct visitors from geobytescity to geobyteslocationcode.html, and would re-direct users from geobytesregion to geobytesinternetgeobytescode.html Any other visitors from geobytescountry would be re-directed to geobytesinternet.html. Visitors from other countries will not be re-directed.

The following example re-directs to an .ASP page and waits for 5 seconds.

Can you re-direct users to any page name you like?

Yes, there are a number of ways to do this. First you can use thetargetpageparameter to specify the target page for the redirect. Here is an example:

Notice, that you still need to set the file extension, if any. In the above example, all visitors from either New York or London would be redirected to BigCities.ASP.

Another approach is to use the “sGeobytesLocationCode” Javascript variable to detect where the user is from, and then issue your own re-direct to any other page you like. Re-directing your users this way enables you to have more control over which users are re-directed to which pages. For example:

The script above would re-direct users from geobytescountry to any page that you specify, you can also specify a fully qualified url. Just replace “enter your url here” with the url of the page you are re-directing your users to.

Can you re-direct all users within a given radius?

Yes, there are at least two ways to do this, depending on whether you want to send the visitors from each of the cities within the specified radius to their own custom page or to a common page for all of the cities within the defined area.

This script uses the -r parameter to direct all visitors from within a 80 kilometre radius of to a target page called MyPage.html after 5 seconds.

The above approach will probably meet most application’s requirements, however, there is another way to use this ‘radius’ facility, and that is “without specifying a target page” as we did in the above example. If you omit the target page parameter from the above example, then GeoDirection will redirect each city’s traffic to its own page – you would need a landing page for each city within the radius – as the script will automatically redirect to the users ‘city page’. (A city page being something like – geobyteslocationcode.html) This option – without the targetpage parameter is more tedious as you would need to look up all of the location codes for all of the surrounding cities – and worse still create pages for each city. However, while this approach might seem like a complete waste of time, it is very handy when the server is dynamically creating the pages on the fly – the URI part of the URL tells the server which page to create.

Another option  is to just include a comma separated list of all of the location codes within the area of interest and then redirect to a nominated page manually – as shown in the “AlternatePageName” example above.:  The advantage of this method, while more complex, is that you get more control.

See the FAQ below for further examples.

How to find out location codes for Cities, Regions, Countries?

The last point you need to know to get geo re-directs running is the location codes for the cities, regions and countries that you wish to target.

The easiest way is to use our AJAX Cities API page, to look up the code for the nominated city, but as you have probably realised now you can pretty much guess the code of many of the countries and regions. For example: The region code is the first 4 characters of the location code, and the country code is the first 2 characters.

Using the sGeobytesLocationCode Javascript Variable

After the GeoDirection service processes your request it initialises a JavaScript string variable that is accessible by any JavaScript on the page. The variables name is “sGeobytesLocationCode” and its value is set to the location code of the user. For example: The location code for geobytescity is geobyteslocationcode. If the user’s location can’t be determined its value is “unknown”. You may wish to use this variable to tell the user something like: “We are now re-directing you to our geobytescity page… Please Wait…” Following is some sample code:

GeoDirection FAQ

How do I open the re-directed page in a new window?

Simply use JavaScript’s method. For example, the code below would open a new page redirecting users from geobytesregion .

How many Geobytes’ JavaScript variables are there and what are their names?

There are 30 Geobytes’ JavaScript variables in total to use, their names with a short summary describing each variable are in the table below:


Geobytes’ Country Variables

Sample Data





The primary key of the countries table.




The country name of a given country



geobytesfips104 FIPS 10-4



The “A 2” column in the ISO 3166 document




The “A 3” column in the ISO 3166 document




The “Number” column in the ISO 3166 document




The “ccTLD” code designated by IANA*




The capital city of a given country




The major reference point in the world of the given country




The singular expression of a given countries nationality




The plural expression of a given countries nationality




The currency of the given country




The currency code of a given country




The population of a given country




The given country’s title as it would appear in a sentence.

Geobytes’ Region Variables

Sample Data





A variable holding the primary key of the regions table of a given region.




A variable holding the region name of a given region




A 2 character code used to represent the general abbreviation for a sub-country geographical region




Used to identify a geopolitical region at a sub-country region level

Geobytes’ City/Location Variables

Sample Data





A variable holding the primary key of the cities table of a given city.




A variable holding the city name of a given city




A variable holding the latitude of a given city




A variable holding the Longitude of a given city




A variable holding the Timezone of a given city




A variable holding the GeobytesLocationCode of a given city

 26  sGeobytesFqcn  geobytesfqcn  A variable holding the Geobytes Fully Qualified City Name of a given city

Geobytes’ Subnet Variables

Sample Data





A variable used to indicate certainty




A variable used to indicate that the connection is being made by a Proxy




A variable used to indicate that the user is connecting via a ProxyNetwork (AOL or MSN TV)




A variable that stores an IP Address

*IANA – Internet Assigned Numbers Authority

For a comprehensive description of each of the above fields see the Understanding the Geo Tags & Geobytes Headerspage.

How could I redirect users from multiple countries to multiple pages respectively?

The code below would redirect users from the countries within each variable (ie. var sCountryLocations=”US”) to be redirected to any page of a webmasters choice.

How would I redirect users to two different pages?

The code below redirects users from the countries within Europe to one page and visitors from the United States to another page.  The rest of the world stays on the current page that this code is pasted onto.

How would I redirect visitors from the United States to “” and the rest of the world to “”?

The code below shows how to, by default let all the traffic go to “” then re-direct people from the United States to “”.

  • Pingback: How do I redirect users from a specific country? | 我爱源码网()

  • Laserheart

    The code above gets blocked with a pop-up blocker. Is there a way to use HTTP refresh to open the target pages instead? (or another method that doesn’t get blocked by pop-up blockers).

  • Gerard

    Is it possible to re-direct everybody (the world) to an other URL and leave only visitors from 1 or 2 countries on the page with the code. All solutions presented work to other way around.
    This is because we have an existing site in dutch and for obvious reasons we do not want to change the url. Since we have more and more visitors from abroad and google translate is still making rubbish from dutch. We want to create a sub domain in English and re-direct everybody from abroad there.

  • Rahul Bind

    excellent service, but got disappointed after using it for one of client, geo ip redirection not working as expected due to very wrong accuracy. For Australia, this script considered it as Indonesia and For New Zealand, it took as London, UK. Please correct it.

  • CognitiveThinking

    Wow! – I would be very interested to know the IP Addresses that you are referring to so that I can firgure out what has gone wrong there.
    Alternatively, if you report them here: then they will typically make it throught to our system within a week.

– because everybody's somewhere