Google Search URL Generator

Pick a query, country, language, location and filters to build a Google search URL, or paste one to see what each parameter does.

Search settings

The domain has not chosen the results country since 2017, and Google began redirecting country domains to google.com in 2025. Set the country with gl.

Google's own list uses uk for the United Kingdom.

Language of Google's menus and labels.

Only pages written in this language.

Copy the Canonical Name column of the Google Ads geo targets list exactly: place, region and country separated by commas, with no spaces after them. Set gl to the same country.

0 is page 1, 10 is page 2, 20 is page 3.

Account, school or network locks can still force filtering.

Search tools

pws=0 only removes personalization from your Google activity. Location, language and device still shape the results.

Search URL

Open in new tab
 

Parameters in this URL

Parameters included in the built URL
Parameter Value What it does

Google stopped honouring num (results per page) in September 2025, so the builder leaves it out. Use start to page through results.

How to use the Google Search URL Generator

Type a query and pick the settings you want. The URL rebuilds as you type, with a table below it listing each parameter and what it does. Use Copy URL or open it in a new tab. To go the other way, switch to Decode a URL and paste any Google search link: every parameter is labelled as a search setting, tracking, session state or no longer working, and you get a clean copy with the clutter removed. Edit in builder loads the decoded settings into the form so you can change one thing and rebuild. Everything runs in your browser. Nothing you type is sent anywhere.

Need a query with operators like site: or intitle: first? Write it in the Search Query Generator and use its Localize link to bring it here.

The Google search parameters this tool sets

Google has never published a reference for the parameters on google.com/search. The closest official source is the Programmable Search Engine JSON API, which documents gl, hl, lr, cr, safe, filter and start with the same values. The rest are long-standing conventions that SEO tools and SERP APIs depend on.

ParameterWhat it controlsExample
qThe query, with spaces sent as +q=best+coffee
glThe country the search runs from, as a two-letter codegl=de
hlThe language of Google's interfacehl=fr
lrOnly pages written in these languages, joined with |lr=lang_es
uuleA precise location such as a city, encodeduule=w+CAIQICI…
tbmResult type: isch images, nws news, vid videos, shop shopping, bks bookstbm=nws
tbsSearch tools, joined with commas: time range, custom dates, verbatimtbs=qdr:w,li:1
startHow many results to skip, so 10 is page 2start=10
safeSafeSearch: active filters explicit results, off does notsafe=active
filter0 shows the similar results Google normally omitsfilter=0
pws0 asks for results without personalization from your activitypws=0

For tbs, qdr:h, d, w, m and y mean the past hour, day, week, month and year. A custom range is cdr:1,cd_min:1/1/2024,cd_max:12/31/2024, with dates written month first. li:1 is Verbatim: exact words, with no synonyms or spelling fixes.

Two parameters are deliberately left out. num, which set the number of results per page, stopped working in September 2025, so paging with start is now the only way through the results. The Google domain is not a country setting either. Since October 2017 Google has picked the country from the searcher's location, not the domain, and in 2025 it started redirecting country domains to google.com. Use gl to choose the country. The domain picker is there for testing and for matching old URLs.

How the uule location parameter works

gl sets the country. uule gets you down to a city, region or postal code. A uule generator turns a location name into this value: w+, then a base64-encoded protocol buffer holding a role, a producer and the location's canonical name. For New York,New York,United States it is:

w+CAIQICIfTmV3IFlvcmssTmV3IFlvcmssVW5pdGVkIFN0YXRlcw

The first bytes are the same for every location, so the value always starts w+CAIQICI. The next character encodes the name's length in bytes: 31 here, which is f in the base64 alphabet. The rest is the name in base64. Many guides print a lookup table for that length character. The table only works for names up to 63 bytes and breaks on longer ones, and it goes wrong if you count characters instead of UTF-8 bytes, as accented names like Zürich show. This generator encodes the full protobuf, so any length works. The value is percent-encoded (+ becomes %2B) so every URL parser reads it the same way. To encode or decode a uule on its own, or start from a preset city, use the UULE generator.

The name must match the Canonical Name column of Google's geo targets list exactly, like Austin,Texas,United States, with commas and no spaces after them. Google ignores names it does not recognise, and you get no error. Set gl to the same country too, which is what SERP API providers recommend.

The decoder also reads the older a+ form, which carries latitude and longitude as plain text inside base64 instead of a place name.

Why localized Google search results still differ

A localized Google search URL controls the parameters, not everything else. Google also estimates location from your IP address and device, and if you are signed in, from your activity and saved places. Results vary between data centers and ongoing experiments, and they change over time. For the most comparable checks, open URLs in a private window, sign out, and treat pws=0 as a request, not a guarantee. When you compare rankings, compare URLs with the same settings, taken close together in time.

How SERP APIs expose the same options

SERP APIs accept these settings as request fields instead of URL parameters, and the names mostly match. SerpApi takes gl, hl, lr, tbs, start and google_domain, plus a location field holding a canonical name. It builds the uule for you and does not accept location and uule in the same request. DataForSEO uses location_code, which is the Google Ads criteria ID from the same geo targets list (2840 for the United States), together with a language_code. Build and check the parameters here, then use the Search API Tester to send the equivalent request to a provider and see what comes back.

Limits

Every parameter here is undocumented on google.com and can change without notice, as num did. Google may ignore a uule it does not recognise, override settings from your account, or show a consent or verification page instead of results. The builder handles one location per URL and a single result type. The decoder explains the parameters it knows. Anything else is marked unknown and kept in the clean URL, so nothing is lost. It decodes a URL you paste but never fetches it, so it can't tell you what the page returned.

Frequently asked questions

What is the difference between gl and hl in Google search?

gl sets the country the search runs from, so it changes which results rank. hl only sets the language of Google's buttons and labels. To limit results to pages written in a language, use lr, for example lr=lang_de.

How do I see Google results as if I were in another country or city?

Add gl with the country code, such as gl=us, and for a city add a uule built from its canonical name, such as Austin,Texas,United States. Open the URL in a private window while signed out, because your IP address and account can still influence the results.

Why is my uule parameter not changing the results?

The location name has to match Google's canonical name exactly, including commas with no spaces after them, and Google silently ignores names it does not know. Also set gl to the same country, and check you are not signed in with a saved location that takes precedence.

Does num=100 still work in Google search?

No. Google stopped honouring num in September 2025, so every page returns the default number of results. Use start=10, start=20 and so on to reach later pages.

What are ved, ei and sxsrf in a Google URL?

They are tracking and session values: ved records which link was clicked, ei identifies the search event, and sxsrf is a security token for your session. None of them change the results, so you can remove them before sharing a link.