In short. Use search_type=fast for routine, high-volume, or latency-sensitive web retrieval when the documented lower-cost path fits the request.
Definition:
search_type=fastselects Perplexity's lower-latency, lower-cost web search path. Use it for routine agent work, high-volume retrieval, or another application where response latency matters; the documented defaultwebpath is for rare, difficult, or ambiguous questions.
Key facts
- The Search API schema defines
web,fast, andpeopleas the available search types, withwebas the default. Perplexity's Search API reference describesfastas lower-latency and lower-cost web search. - Perplexity documents a price of $1.00 per 1,000 Fast Search requests and $5.00 per 1,000 standard web search requests. Its Fast Search guide says each successful
POST /searchrequest counts for billing. - Fast Search accepts
max_resultsfrom 1 to 20, and the same guide says values above 20 are supported only withsearch_type: "people". The Search API quickstart says the usual default formax_resultsis 10.
When is fast the documented fit?
Perplexity's Fast Search guide places day-to-day agentic work, tool calls inside agent loops, high-volume retrieval, and latency-sensitive applications under search_type: "fast". These are workload conditions, so the choice is about the retrieval path an application needs for that request. The guide places rare, difficult, or ambiguous questions under search_type: "web", which is also the default when search_type is omitted.
The documentation describes the difference in latency and cost, but gives no latency figure or quality score for either web search type. A request can therefore use fast when the application values the documented lower-latency and lower-cost path and the query fits ordinary web retrieval.
What does the request return?
The Search API reference describes a direct POST /search endpoint. It returns a ranked results[] array, and each result contains a title, URL, and snippet, with optional publication date and last-updated date fields. The response also contains an id; server_time is an optional field in the response schema.
This is a results API. Perplexity's quickstart distinguishes it from the Agent API, which supplies an LLM-generated answer with citations. A caller that needs raw results for its own processing can use the Search API and choose the search type for the workload.
curl -X POST 'https://api.perplexity.ai/search' \
-H "Authorization: Bearer $PERPLEXITY_API_KEY" \
-H 'Content-Type: application/json' \
-d '{
"query": "latest stable Rust release",
"search_type": "fast",
"max_results": 5
}' | jq
Which request controls still apply?
The Search API reference lists country as an ISO 3166-1 alpha-2 country code and provides language, domain, publication-date, last-updated, and recency filters. It also defines max_tokens as the maximum total webpage-content tokens across all results and max_tokens_per_page as the extraction limit for each result page. Choosing fast leaves these request controls available.
The quickstart gives max_results values from 1 to 20 and a default of 10. The reference gives the same web-search ceiling and states that values above 20 require people search. For a local or time-bounded query, the caller can combine the web-search path with the relevant country or date filter documented in the request schema.
What SDK detail should be checked?
Perplexity's Fast Search guide documents a compatibility detail for its examples. With Python library versions 0.43.4 and 0.43.5, it shows extra_body={"search_type": "fast"} because passing search_type="fast" directly fails that library's request validation. For the TypeScript SDK version 0.38.5, it shows a type cast because the current SDK types do not yet include fast.
The cURL form sends search_type in the JSON request body directly. That form is useful for checking the API payload independently of SDK type definitions.
Related terms
FAQ
Should a high-volume retrieval workflow use fast?
Yes. Perplexity lists high-volume retrieval and tool calls inside agent loops among the documented uses for Fast Search. The same guide describes it as lower-latency and lower-cost web search.
What happens when search_type is omitted?
The request uses standard web search because web is the documented default. Set search_type to fast when the workload matches the Fast Search uses described above.
Can fast return more than 20 web results?
Perplexity documents max_results from 1 to 20 for Fast Search. Values above 20 are supported with search_type: "people", according to the Fast Search guide.
Does fast change the response format?
The guide says Fast Search results use the same response format as standard web search. The Search API reference describes that format as a response with a ranked results[] array.
Sources
- Perplexity, "Search the Web", undated
- Perplexity, "Fast Search", undated
- Perplexity, "Perplexity Search API", undated
Check how a page reads to answer engines. Open the GEO score analyzer