Skip to content

Geo Routing

const countryRows = [ ["US", "United States"], ["GB", "United Kingdom"], ["DE", "Germany"], ["FR", "France"], ["SA", "Saudi Arabia"], ["AE", "United Arab Emirates"], ["IN", "India"], ["BR", "Brazil"], ["JP", "Japan"], ["AU", "Australia"], ];

Send visitors to different destinations based on their country while keeping one short link.

What geo routing is

Geo routing evaluates the visitor's country (typically from IP or edge headers) and picks a redirect URL from your rules. Use it for localized landing pages, store listings by region, or compliance-friendly defaults when certain countries need different web experiences.

How to set up rules in the dashboard

  1. Open the link (or project defaults, if your plan supports global geo rules).
  2. Find Geo routing or Regional redirects.
  3. Add one or more rules using the country selector and destination URL for each group. You can define up to 10 geo rules per link.
  4. Set a fallback URL for countries not matched by any rule.
  5. Save and test from VPN or device locations that match your target regions.

Country code reference

Flinku uses ISO 3166-1 alpha-2 codes (two letters, uppercase). Examples:

            Code
            Country
          
        
        
          {countryRows.map(([code, name]) => (
            
              {code}
              {name}
            
          ))}

Full lists are published by the ISO; use the same two-letter codes in the dashboard and API.

API field: geoRouting

When creating or updating a link via API, pass a geoRouting array. Each entry maps one or more country codes to a destination URL.

javascript
"geoRouting": [
  { "countries": ["US", "CA"], "url": "https://apps.apple.com/us/app/id000000000" },
  { "countries": ["GB"], "url": "https://apps.apple.com/gb/app/id000000000" }
]

Common use case: different App Store or Play Store listings per region while sharing one short link.

The modern Firebase Dynamic Links replacement.