In short. max_results sets a ceiling for returned results, with a documented maximum of 20 for web search and 50 for people search.
Definition: No. In Perplexity's Search API,
max_resultsis an upper bound on the number of results requested. The documented limit is 20 for web search and 50 for people search, and the reference does not promise that the response will contain exactly the requested number of pages.
Key facts
- Perplexity describes
max_resultsas the maximum number of results and gives it a valid range from 1 to 50 in the Search API reference. - Values above 20 require
search_type=people; the same reference supports up to 20 for web search and up to 50 for people search. - The Search API quickstart says that a basic search accepts
max_resultsfrom 1 to 20 and defaults to 10. - The API returns a ranked
results[]array. Each result has a title, URL and snippet, with optional publication and update dates, according to the Search API reference. - Perplexity's People Search documentation says that
search_type="people"routes a standard Search API request to the People Search backend and keeps other Search API parameters available.
What does max_results control?
The Search API reference labels the field “Maximum number of results.” That wording describes a ceiling for the results[] array. It sets how many results the request may ask the service to return, rather than creating a requirement to fill every position.
The request goes directly to https://api.perplexity.ai/search. Perplexity's example uses max_results in the JSON body:
curl -X POST 'https://api.perplexity.ai/search' \
-H 'Authorization: Bearer $PERPLEXITY_API_KEY' \
-H 'Content-Type: application/json' \
-d '{
"query": "latest AI developments",
"max_results": 3
}' | jq
The response is an array of ranked pages. The documented fields are title, url, snippet, and optional date and last_updated values.
What is the upper limit for each search type?
For the basic web request described in the quickstart, max_results accepts 1 to 20 and defaults to 10. The API reference also defines a broader field range of 1 to 50 because people search uses a separate ceiling.
The reference lists web, fast and people as the available search_type values. It describes fast as a lower-latency, lower-cost web search and says that values above 20 are only supported for people search. A web request with max_results set to 20 therefore uses the documented web limit. A request for 50 belongs to the people-search case.
Does the response have to contain the requested count?
No exact-count rule appears in the reference. It defines a required results array in the response schema and describes each member as a result page, but it does not say that the array is padded to the requested length. Read results.length as the number returned for that request and max_results as its ceiling.
People Search confirms the scope of the exception: setting search_type="people" routes the query to the People Search backend, while parameters such as max_results continue to apply. This is why the value 50 is documented for people search and not for general web search.
Related terms
FAQ
If I set max_results to 10, should I require 10 array items?
No. Treat 10 as the maximum requested size and process the items actually present in results[]; the reference gives no exact-count or padding rule.
Can a web search request max_results=50?
Perplexity documents values above 20 only for search_type=people. General web search is documented up to 20 results.
What happens when max_results is omitted?
The Search API quickstart states that the basic search default is 10.
Does max_results also apply to People Search?
Yes. Perplexity says that People Search uses a standard Search API request and that other Search API parameters, including max_results, continue to apply.
Sources
- Perplexity, "Search the Web", accessed 17 October 2026
- Perplexity, "Perplexity Search API", accessed 17 October 2026
- Perplexity, "People Search", accessed 17 October 2026
Check how a page reads to answer engines. Open the GEO score analyzer