Google Search Operators
Ultimate Guide to Google Search Operators and Parameters
Advanced search operators can be entered directly into the Google search box to refine your search. Search parameters can be used to construct your own search strings by typing them into the address bar, also called the Chrome omnibar.
A search operator might look like:
allintitle: tesla vs edison
A search parameter might look like:
https://www.google.com/search?q="nikola+tesla"
What are Google search operators?
Google search operators are special characters and commands sometimes called “advanced operators” or search parameters that extend the capabilities of regular text searches. Search operators can be useful for everything from content research to technical SEO audits.
How do I use search operators?
You can enter search operators directly into the Google search box, just as you would a text search:
Except in special cases (such as the “in” operator), Google will return standard organic results.
Google search operators cheat sheet
You can find all of the major organic search operators below, broken up into three categories: “Basic”, “Advanced”, and “Unreliable”. Basic search operators are operators that modify standard text searches.
I. Basic search operators | |
---|---|
" " | "nikola tesla" Put any phrase in quotes to force Google to use exact-match. On single words, prevents synonyms. |
OR | tesla OR edison Google search defaults to logical AND between terms. Specify "OR" for a logical OR (ALL-CAPS). |
| | tesla | edison The pipe (|) operator is identical to "OR". Useful if your Caps-lock is broken :) |
( ) | (tesla OR edison) alternating current Use parentheses to group operators and control the order in which they execute. |
- | tesla -motors Put minus (-) in front of any term (including operators) to exclude that term from the results. |
* | tesla "rock * roll" An asterisk (*) acts as a wild-card and will match on any word. |
#..# | tesla announcement 2015..2017 Use (..) with numbers on either side to match on any integer in that range of numbers. |
$ | tesla deposit $1000 Search prices with the dollar sign ($). You can combine ($) and (.) for exact prices, like $19.99. |
€ | €9,99 lunch deals Search prices with the Euro sign (€). Most other currency signs don't seem to be honored by Google. |
in | 250 kph in mph Use "in" to convert between two equivalent units. This returns a special, Knowledge Card style result. |
Advanced search operators are special commands that modify searches and may require additional parameters (such as a domain name). Advanced operators are typically used to narrow searches and drill deeper into results.
II. Advanced search operators | |
---|---|
intitle: | intitle:"tesla vs edison" Search only in the page's title for a word or phrase. Use exact-match (quotes) for phrases. |
allintitle: | allintitle: tesla vs edison Search the page title for every individual term following "allintitle:". Same as multiple intitle:'s. |
inurl: | tesla announcements inurl:2016 Look for a word or phrase (in quotes) in the document URL. Can combine with other terms. |
allinurl: | allinurl: amazon field-keywords nikon Search the URL for every individual term following "allinurl:". Same as multiple inurl:'s. |
intext: | intext:"orbi vs eero vs google wifi" Search for a word or phrase (in quotes), but only in the body/document text. |
allintext: | allintext: orbi eero google wifi Search the body text for every individual term following "allintext:". Same as multiple intexts:'s. |
filetype: | "tesla announcements" filetype:pdf Match only a specific file type. Some examples include PDF, DOC, XLS, PPT, and TXT. |
related: | related:nytimes.com Return sites that are related to a target domain. Only works for larger domains. |
AROUND(X) | tesla AROUND(3) edison Returns results where the two terms/phrases are within (X) words of each other. |
Unreliable operators have either been found to produce inconsistent results or have been deprecated altogether. The "link:" operator was officially deprecated in early 2017. It appears that "inanchor:" operators are still in use, but return very narrow and sometimes unreliable results. Use link-based operators only for initial research.
III. Unreliable/deprecated operators | |
---|---|
~ | ~cars Include synonyms. Seems to be unreliable, and synonym inclusion is default now. |
+ | +cars Force exact-match on a single phrase. Deprecated with the launch of Google+. |
daterange: | tesla announcements daterange:2457663-2457754 Return results in the specified range. Can be inconsistent. Requires Julian dates. |
link: | link:nytimes.com Find pages that link to the target domain. This operator was deprecated in early 2017. |
inanchor: | inanchor:"tesla announcements" Find pages linked to with the specified anchor text/phrase. Data is heavily sampled. |
allinanchor: | allinanchor: tesla announcements Find pages with all individual terms after "inanchor:" in the inbound anchor text. |
Note that, for all of the "allin...:" operators, Google will try to apply the operator to every term following it. Combining "allin...:" operators with any other operators will almost never produce the desired results.
Search operator tips & tricks
Having all of the pieces is only the first step in building a puzzle. The real power of search operators comes from combining them.
1. Chain together operator combos
You can chain together almost any combination of text searches, basic operators, and advanced operators:
"nikola tesla" intitle:"top 5..10 facts" -site:youtube.com inurl:2015
This search returns any pages that mention "Nikola Tesla" (exact-match), have the phrase "Top (X) facts" in the title, where X ranges from 5 to 10, are not on YouTube.com, and have "2015" somewhere in the URL.
2. Hunt down plagiarized content
Trying to find out if your content is unique or if someone is plagiarizing you? Use a unique phrase from your text, put it in quotes (exact-match) after an "intext:" operator, and exclude your own site with "-site:"...
intext:"they were frolicking in our entrails" -site:moz.com
Similarly, you can use "intitle:" with a long, exact-match phrase to find duplicate copies of your content.
3. Audit your HTTP->HTTPS transition
Switching a site from HTTP to HTTPS can be challenging. Double-check your progress by seeing how many of each type of page Google has indexed. Use the "site:" operator on your root domain and then exclude HTTPS pages with "-inurl:"...
site:moz.com -inurl:https
This will help you track down any stragglers or find pages that might not have been re-crawled by Google.
These are just a few examples of a nearly infinite set of combinations. Looking for more examples? You're in luck! We've created a mega-list of 67 examples to catapult you toward site operator mastery.
Rise in the rankings with Moz Pro
With top-notch link and keyword data and in-depth analytics, Moz Pro provides the tracking and insights you need to reach #1. Take a free 30-day trial on us and see what you can achieve:
Deep dive into Google search parameters
Ever wanted to know how to construct your own Google search strings? This ultimate guide contains all of Google's search string parameters. you can also build your own advanced saerch using google's advanced search form.
http://www.google.com/search?
Google's URL. You'll see it if you look at the address bar, or Chrome omnibar.
q=query+goes+here
The query string. Words are separated by + signs.
Everything from here on in is preceded by an & sign, as it's tagged on to the end. Here's where things get interesting...
as_epq=query+goes+here
Results must include the query, in the word order displayed.
Shows as "query goes here"
as_oq="query+string"+goes+here
Results must include one or more of the words in this string. Basically, it's like a more advanced version of the one above, using an "or" filter. Thus, every result must have the main initial query, and one or more of the sets of terms in these strings.
Shows as "query string" OR goes OR here
as_eq=don't+include+these+words
Results must NOT include any words in this string.
Shows as -don't -include -these -words
num=xx
Controls the number of results shown. Must be a numeric value, and can be anything up to 100. Doesn't work with fractions.
as_filetype=extension
Only returns results that end in .extension. Currently supports any input. Try it - make a file with a random extension, get it indexed and do a search. Also shows that as long as it validates to something.
Shows as filetype:extension
as_sitesearch=example.com
Limits results to just the site you choose.
Shows as site:example.com
as_qdr=x
Swap out x for the following to limit the search to only files first indexed in:
- d - the previous 24 hours
- w - the previous seven days
- m - the previous month
- y - past year
- mn - the previous n number of months. So m2 would be the previous two, m3 would be three, and so on. Does work into double digits
as_rights=xxx
Limits the search to files/pages that have certain rights. The options are:
- (cc_publicdomain|cc_attribute|cc_sharealike|cc_noncommercial|cc_nonderived) - free to use or share
- (cc_publicdomain|cc_attribute|cc_sharealike|cc_nonderived).-(cc_noncommercial) - free to use or share, including commercially
- (cc_publicdomain|cc_attribute|cc_sharealike|cc_noncommercial).-(cc_nonderived) - free to use, share, or modify
- (cc_publicdomain|cc_attribute|cc_sharealike).-(cc_noncommercial|cc_nonderived) - free to use, share, or modify commercially
If you want to make up your own, put the bits you want in brackets, separated by pipe characters (|), and exclude the bits you don't by putting them in brackets, preceded by .- and again pipe-separated.
allintitle%3Asearch+terms
This is actually appended to the q= parameter, hence a search for fishing with the allintitle term "sea bass" would require the following query:
q=fishing+allintitle%3Asea+bass
Shows as allintitle:search terms
N.B. This also works with allintext to search page body text, allinurl for searching the URL, and allinanchor for finding sites that are linked to with certain anchor text.
nnn..yyyy
Like the allin parameters, this is actually appended to the q= parameter. What this does though is let you search for results between numeric ranges. For example, if you wanted to find documents with numbers between 15 and 100, you'd put in 15..100. Very useful for finding products in a price range, when combined with the site limiter. Works with $, £, and other such things.
Shows as query 15..100
%2Bterm
Again, this is appended to the q= parameter. The %2B is actually the + sign encoded, and will return results featuring only the term used, with no pluralisations, alternate tenses, or synonyms.
Shows as +term
~term
Another one that's appended to the q= parameter. Returns results for the term used and synonyms.
Shows as ~term
define%3Aword
Yet another q= parameter add-on. Returns definitions for the word you put in.
Shows as define:word
term * term two
And another q= parameter add-on. Returns results with listings that contain both words, with other words between them.
n+n2, n-n2, n/n2, n*n2, n^n2 and n% of n2
Google's calculator functions. They are, in order, add, subtract, divide, multiply, raise to the power of, and return x percentage of.
safe=active
Sets safe search to on. To turn it off, change active to images.
as_rq=example.com
Finds sites Google thinks are related to the URL you put in.
Shows as query related:example.com
as_lq=example.com
Finds sites that link to the URL you put in.
Shows as query link:example.com
newwindow=n
Opens clicked listings in a new window. Very useful for opening lots of documents at a time, for competitor research. Set to 1 to activate, and 0 to turn it off.
pws
Controls whether personalised search is on or not. Set to 1 to activate, and 0 to turn it off.
adtest=on
Turns off AdWords database connection, so your browsing won't show up as an impression, and will disable the URLs. Set to on to activate, and off to turn it off.
btnG=Search
Simulates a click on the normal Google results buttpm. Change to btnI to get the I'm Feeling Lucky button result.
ie=
Controls the input encoding settings. This defaults to UTF-8, and is worked out server-side, hence changing it doesn't do anything.
oe=
Controls the output encoding settings. Works in the same way as ie, so you can tinker away, but it won't do anything.
&hl=value
Changes the interface language. I won't list them all here, but you can find them all here.
lr=value
Limits the languages used to return results. Not hugely effective. That said, here's the list of all of them:
- lang_ar - Arabic
- lang_hy - Armenian
- lang_be - Belarusian
- lang_bg - Bulgarian
- lang_ca - Catalan
- lang_hr - Croatian
- lang_cs - Czech
- lang_da - Danish
- lang_nl - Dutch
- lang_en - English
- lang_eo - Esperanto
- lang_et - Estonian
- lang_tl - Filipino
- lang_fi - Finnish
- lang_fr - French
- lang_de - German
- lang_el - Greek
- lang_iw - Hebrew
- lang_hu - Hungarian
- lang_is - Icelandic
- lang_id - Indonesian
- lang_it - Italian
- lang_ja - Japanese
- lang_ko - Korean
- lang_lv - Latvian
- lang_lt - Lithuanian
- lang_no - Norwegian
- lang_fa - Persian
- lang_pl - Polish
- lang_pt - Portuguese
- lang_ro - Romanian
- lang_ru - Russian
- lang_sr - Serbian
- lang_sk - Slovak
- lang_sl - Slovenian
- lang_es - Spanish
- lang_sv - Swedish
- lang_th - Thai
- lang_tr - Turkish
- lang_uk - Ukrainian
- lang_vi - Vietnamese
- lang_zh-CN - Chinese Simplified
- lang_zh-TW - Chinese Traditional
cr=countryXX
Limits the search results to pages/sites from certain locations. Change XX to any of the following, to limit the results:
- AF - Afghanistan
- AL - Albania
- DZ - Algeria
- AS - American Samoa
- AD - Andorra
- AO - Angola
- AI - Anguilla
- AQ - Antarctica
- AG - Antigua and Barbuda
- AR - Argentina
- AM - Armenia
- AW - Aruba
- AU - Australia
- AT - Austria
- AZ - Azerbaijan
- BS - Bahamas
- BH - Bahrain
- BD - Bangladesh
- BB - Barbados
- BY - Belarus
- BE - Belgium
- BZ - Belize
- BJ - Benin
- BM - Bermuda
- BT - Bhutan
- BO - Bolivia
- BA - Bosnia and Herzegovina
- BW - Botswana
- BV - Bouvet Island
- BR - Brazil
- IO - British Indian Ocean Territory
- VG - British Virgin Islands
- BN - Brunei
- BG - Bulgaria
- BF - Burkina Faso
- BI - Burundi
- KH - Cambodia
- CM - Cameroon
- CA - Canada
- CV - Cape Verde
- KY - Cayman Islands
- CF - Central African Republic
- TD - Chad
- CL - Chile
- CN - China
- CX - Christmas Island
- CC - Cocos (Keeling) Islands
- CO - Colombia
- KM - Comoros
- CG - Congo - Brazzaville
- CD - Congo - Kinshasa
- CK - Cook Islands
- CR - Costa Rica
- CI - Cote d'Ivoire
- HR - Croatia
- CU - Cuba
- CY - Cyprus
- CZ - Czech Republic
- DK - Denmark
- DJ - Djibouti
- DM - Dominica
- DO - Dominican Republic
- EC - Ecuador
- EG - Egypt
- SV - El Salvador
- GQ - Equatorial Guinea
- ER - Eritrea
- EE - Estonia
- SZ - Eswatini
- ET - Ethiopia
- FK - Falkland Islands (Malvinas)
- FO - Faroe Islands
- FJ - Fiji
- FI - Finland
- FR - France
- GF - French Guiana
- PF - French Polynesia
- TF - French Southern Territories
- GA - Gabon
- GM - Gambia
- GE - Georgia
- DE - Germany
- GH - Ghana
- GI - Gibraltar
- GR - Greece
- GL - Greenland
- GD - Grenada
- GP - Guadeloupe
- GU - Guam
- GT - Guatemala
- GN - Guinea
- GW - Guinea-Bissau
- GY - Guyana
- HT - Haiti
- HM - Heard and McDonald Islands
- VA - Holy Sea
- HN - Honduras
- HK - Hong Kong
- HU - Hungary
- IS - Iceland
- IN - India
- ID - Indonesia
- IQ - Iraq
- IE - Ireland
- IL - Israel
- IT - Italy
- JM - Jamaica
- JP - Japan
- JO - Jordan
- KZ - Kazakhstan
- KE - Kenya
- KI - Kiribati
- KP - Korea, Democratic People's Republic of
- KR - Korea, Republic of
- KW - Kuwait
- KG - Kyrgyzstan
- LA - Lao People's Democratic Republic
- LV - Latvia
- LB - Lebanon
- LS - Lesotho
- LR - Liberia
- LY - Libyan Arab Jamahiriya
- LI - Liechtenstein
- LT - Lithuania
- LU - Luxembourg
- MO - Macau
- MK - Macedonia
- MG - Madagascar
- MW - Malawi
- MY - Malaysia
- MV - Maldives
- ML - Mali
- MT - Malta
- MH - Marshall Islands
- MQ - Martinique
- MR - Mauritania
- MU - Mauritius
- YT - Mayotte
- MX - Mexico
- FM - Micronesia, Federated States of
- MD - Moldova, Republic of
- MC - Monaco
- MN - Mongolia
- MS - Montserrat
- MA - Morocco
- MZ - Mozambique
- MM - Myanmar
- NA - Namibia
- NR - Nauru
- NP - Nepal
- NL - Netherlands
- AN - Netherlands Antilles
- NC - New Caledonia
- NZ - New Zealand
- NI - Nicaragua
- NE - Niger
- NG - Nigeria
- NU - Niue
- NF - Norfolk Island
- MP - Northern Mariana Islands
- NO - Norway
- OM - Oman
- PK - Pakistan
- PW - Palau
- PS - Palestinian Territory
- PA - Panama
- PG - Papua New Guinea
- PY - Paraguay
- PE - Peru
- PH - Philippines
- PN - Pitcairn
- PL - Poland
- PT - Portugal
- PR - Puerto Rico
- QA - Qatar
- RE - Reunion
- RO - Romania
- RU - Russian Federation
- RW - Rwanda
- SH - Saint Helena
- KN - Saint Kitts and Nevis
- LC - Saint Lucia
- PM - Saint Pierre & Miquelon
- VC - Saint Vincent and the Grenadines
- WS - Samoa
- SM - San Marino
- ST - Sao Tome and Principe
- SA - Saudi Arabia
- SN - Senegal
- CS - Serbia and Montenegro
- SC - Seychelles
- SL - Sierra Leone
- SG - Singapore
- SK - Slovakia
- SI - Slovenia
- SB - Solomon Islands
- SO - Somalia
- ZA - South Africa
- GS - South Georgia and The South Sandwich Islands
- ES - Spain
- LK - Sri Lanka
- SD - Sudan
- SR - Suriname
- SJ - Svalbard & Jan Mayen
- SE - Sweden
- CH - Switzerland
- SY - Syrian Arab Republic
- TW - Taiwan
- TJ - Tajikistan
- TZ - Tanzania
- TH - Thailand
- TL - Timor-Leste
- TG - Togo
- TK - Tokelau
- TO - Tonga
- TT - Trinidad and Tobago
- TN - Tunisia
- TR - Turkey
- TM - Turkmenistan
- TC - Turks and Caicos Islands
- TV - Tuvalu
- UG - Uganda
- UA - Ukraine
- AE - United Arab Emirates
- GB - United Kingdom
- US - United States
- UM - United States Minor Outlying Islands
- UY - Uruguay
- UZ - Uzbekistan
- VU - Vanuatu
- VE - Venezuela
- VN - Viet Nam
- VG - Virgin Islands (British)
- VI - Virgin Islands (U.S.)
- WF - Wallis and Futuna Islands
- EH - Western Sahara
- YE - Yemen
- ZM - Zambia
- ZW - Zimbabwe
Keep learning
Put your skills to work
Gauge a Site's Influence with Link Explorer
Link Explorer is a link popularity and backlink analysis tool that lets you research and compare any site on the web.