Is there a way to sort Google Search results by date?
(I know how to limit the search to a particular time period.)
Click 'Search tools' then select any date filter other than 'Any time'. Then click in the default 'Sorted by relevance' option and select 'Sorted by date'
No, you cannot change the sort order of Google Search results. The sort order is determined by Google's secret recipe.
All you can do is filter your search for specific time periods.
Rubén and infrcl have good answers.
Here is one way you can sort by date, using Search Query Parameters.
Assume you want the last two years sorted by date.
&tbs=qdr:y2,sbd:1
to your URL and hit Enter.tbs: It is a param that is like a container for params.Defines specific structure, such as key:value, and comma delineation between params. https://stenevang.wordpress.com/2013/02/22/google-search-url-request-parameters/
qdr: Similar to as_qdr
(advanced search quick date range). Here you specify date range. qdr:y2
means, "search within the last two years". You can search by days using d
, as in qdr:d10
to search within the last 10 days. Further instruction at https://developers.google.com/custom-search/docs/xml_results?hl=en#Advanced_Search_Query_Parameters
sbd: I believe this is a boolean for sort-by-date.
tbs
is available in formal docs. However maybe I can help. What happens when you try? Can you send a sample URL thats not working? For instance https://www.google.com/search?q=cheese&ie=utf-8&oe=utf-8
should become https://www.google.com/search?q=cheese&ie=utf-8&oe=utf-8&tbs=qdr:y2,sbd:1
and that works for me.
Commented
Feb 11, 2016 at 18:31
Google Search doesn't include a way to sort unfiltered search results.
Filter results by any time filter. This will display several dropdowns. One of them if for sorting options including sorting by date. (see [4])
One alternative could be to create your own search engine with Google Custom Search as it allows to search the entire web and include results sorting.
To add to https://webapps.stackexchange.com/a/89543 above, there is a hacky way to sort all Google search results from "Any time" by date so you get new results at top without using any time range.
Simply botch the qdr parameter by feeding it something other than what it expects like &tbs=qdr:X
instead of &tbs=qdr:y2
, &tbs=qdr:m1
, &tbs=qdr:d30
or &tbs=qdr:w4
etc. Now Google will serve results that are sorted by date,newest first and date range will turn to 'Any time'.
Also I noticed that search results can be very inconsistent for a time range if it is defined differently say using &tbs=qdr:m1
instead of &tbs=qdr:d30
.
After limiting your search to a time period, change the option "Sorted by relevance" to "Sorted by date" below your search query.