Pinterest Keyword Autocomplete Scraper avatar

Pinterest Keyword Autocomplete Scraper

Pricing

from $2.99 / 1,000 autocomplete suggestions

Go to Apify Store
Pinterest Keyword Autocomplete Scraper

Pinterest Keyword Autocomplete Scraper

Discover Pinterest search autocomplete suggestions for keywords and locales to support Pinterest SEO, trend research, and content planning.

Pricing

from $2.99 / 1,000 autocomplete suggestions

Rating

0.0

(0)

Developer

w3crawler

w3crawler

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

2

Monthly active users

4 hours ago

Last modified

Categories

Share

What does Pinterest Keyword Autocomplete Scraper do?

This Actor collects source-backed autocomplete suggestions for complete search terms from the Pinterest search experience. It keeps a suggestion only when Pinterest’s request metadata matches the complete input keyword and the returned text remains related to every non-trivial input token. It is a public search-data extractor, not a login tool or an access-control workaround.

The Actor can process several keywords in one run and preserve the locale passed to Pinterest. Blocked requests and empty results are represented in the run log and OUTPUT_SUMMARY; the dataset contains source-backed suggestions only.

Why use Pinterest Keyword Autocomplete Scraper?

  • Build Pinterest SEO and content-planning keyword lists from the same autocomplete surface that users see.
  • Compare suggestions for multiple seed terms or locales in one bounded run.
  • Keep query provenance, response order, locale, and optional source metadata with every suggestion.
  • Detect unrelated partial-query responses instead of silently presenting them as results for the requested term.

Apify provides the dataset, run history, API access, scheduling, and optional proxy configuration. Pinterest’s response may omit optional fields such as scores, result counts, annotations, categories, or preview images; omitted values are not fabricated.

What data can Pinterest Keyword Autocomplete Scraper extract?

Normal suggestion fields

FieldTypeMeaning and source
entityTypestringAlways pinterest_keyword_suggestion for a normal row.
inputKeywordstringThe normalized keyword submitted by the user.
suggestionstringPinterest suggestion text, normalized to lowercase for stable deduplication.
displayTextstringPinterest display text when available; otherwise the normalized suggestion text.
annotationstringOptional annotation returned by Pinterest.
typestringPinterest suggestion type, or suggestion when the response does not specify one.
categorystringOptional Pinterest category context.
imageUrlstringOptional HTTPS pinimg.com preview URL returned by Pinterest.
scorenumberOptional response score or weight.
resultCountintegerOptional non-negative result count returned by Pinterest.
localestringLocale used for the request, defaulting to en_US when absent or invalid.
positioninteger1-based position in the accepted source order for that keyword.
sourceUrlstringThe Pinterest search URL used for the keyword.
scrapedAtstringISO 8601 UTC time when the row was written.

When no usable suggestion is available, the dataset has no row for that request. Failures are described in the run log and OUTPUT_SUMMARY; a successful empty response is summarized as NO_RESULTS.

How to scrape Pinterest autocomplete suggestions

  1. Open the Pinterest Keyword Autocomplete Scraper in Apify Console.
  2. In Input, provide one or more complete strings in keywords.
  3. Optionally set locale, maxItems, timeout/retry controls, or a delay.
  4. Enable Proxy Configuration only when direct transport is unreliable.
  5. Click Start and inspect the dataset and OUTPUT_SUMMARY after the run.
  6. Treat a BLOCKED or NO_RELEVANT_SUGGESTIONS row as an access or source result, not as proof that Pinterest has no demand for the keyword.

For API or automation use, send the same JSON object to the Actor’s API tab or run apify call jeFwGHCWCCveQMBqI --input-file input.json. The generated dataset and OUTPUT_SUMMARY links are also exposed in the run output.

How much will it cost to scrape Pinterest autocomplete?

Apify charges for the platform resources used by a run. Cost depends on browser time, the number of unique keywords, configured retries, response size, and proxy transfer. maxItems limits emitted dataset rows; it does not guarantee that Pinterest will return that many suggestions. requestDelayMs can increase run time. The repository's deterministic fixture tests do not represent live Cloud collection cost.

Input

Input fields

FieldTypeDefaultRequiredLimits and behavior
keywordsarray of strings—yes1–100 non-blank strings, each at most 200 characters. Leading/trailing whitespace is trimmed and duplicate keywords are removed while preserving first-seen order.
localestringen_USnoA two-letter language with an optional two-letter region, such as en_US, en-GB, or fr_FR. Invalid or missing values fall back to en_US; hyphenated locales are normalized to an underscore.
maxItemsinteger200noGlobal maximum of 1–500 normal suggestion rows across all keywords.
requestTimeoutSecsinteger90noPer-keyword request timeout from 30–180 seconds.
maxRequestRetriesinteger0noCrawlee retries for a failed keyword page request, from 0–2. A retry does not bypass a source block.
requestDelayMsinteger0no0–5000 milliseconds after a keyword produces accepted suggestions. It is not a pagination control.
proxyConfigurationobjectdirectnoApify/custom proxy settings. A proxy is used only when useApifyProxy is true or a non-empty proxyUrls array is supplied.

Unknown input fields are rejected. startUrls, query, category/date filters, sortBy, maxPages, detail toggles, credential fields, and arbitrary developer headers are not supported.

Minimal input

{
"keywords": ["interior design", "yoga"]
}

Locale and bounded run

{
"keywords": ["interior design"],
"locale": "en_GB",
"maxItems": 20,
"requestTimeoutSecs": 90,
"maxRequestRetries": 0,
"requestDelayMs": 250
}

Proxy input

{
"keywords": ["wedding ideas", "yoga"],
"proxyConfiguration": {
"useApifyProxy": true
}
}

Output

You can download the dataset in various formats such as JSON, HTML, CSV, or Excel.

Normal suggestion record

{
"entityType": "pinterest_keyword_suggestion",
"inputKeyword": "interior design",
"suggestion": "interior design living room",
"displayText": "Interior Design Living Room",
"type": "suggestion",
"score": 0.94,
"locale": "en_US",
"position": 1,
"sourceUrl": "https://www.pinterest.com/search/pins/?q=interior%20design",
"scrapedAt": "2026-09-08T16:00:00.000Z"
}

Optional response-backed fields such as annotation, category, imageUrl, and resultCount are omitted when Pinterest does not provide them. This keeps normal rows schema-safe without inventing values.

Fallback behavior

The Actor first observes matching AdvancedTypeaheadResource or TypeaheadResource responses from the public search page. If none is usable, it types the complete term when a search input is available, tries the same public resource wrappers directly, and finally tries two legacy public typeahead endpoints. All fallback paths still require complete-keyword request metadata and the same relevance test; there is no fallback to credentials or stealth browser changes.

{
"url": "https://www.pinterest.com/search/pins/?q=unknown",
"error": "Pinterest returned no autocomplete suggestions demonstrably related to the full keyword \"unknown\".",
"errorCode": "NO_RELEVANT_SUGGESTIONS",
"scrapedAt": "2026-09-08T16:00:00.000Z"
}

OUTPUT_SUMMARY

{
"status": "PARTIAL",
"hasData": true,
"normalRecords": 12,
"diagnosticRecords": 0,
"keywordsRequested": 2,
"suggestionsRequested": 20,
"suggestionsCollected": 12,
"proxyUsed": false,
"source": "pinterest",
"finishedAt": "2026-09-08T16:00:00.000Z"
}

normalRecords and suggestionsCollected count only dataset rows. A successful empty response is summarized as NO_RESULTS; a failure with no suggestion rows fails the run. When rows were already stored, a later failure preserves them and reports PARTIAL.

Limits, precedence, filtering, and deduplication

  • Source and precedence: For every unique keyword, the runtime constructs https://www.pinterest.com/search/pins/?q=<encoded keyword>. There is no startUrls input and therefore no startUrls precedence rule.
  • Pagination: There is no user-controlled pagination. The Actor makes one bounded search-page navigation per unique keyword and does not claim to enumerate a suggestion history or all search results.
  • Request sequence: It observes the initial page’s matching public typeahead resource, optionally types the complete keyword, then tries AdvancedTypeaheadResource, TypeaheadResource, and two legacy typeahead requests only when earlier stages produce no usable suggestions.
  • Filtering: A resource response is accepted only when its data.options.term and, when present, its source_url query match the complete input keyword after normalization. Suggestion text must equal, start with, or contain every non-trivial input token as an exact token or prefix; unrelated partial-query terms are rejected.
  • Deduplication: Duplicate keywords are removed before requests. Suggestions are deduplicated case-insensitively by inputKeyword:suggestion; the global maxItems cap is applied after filtering and deduplication.
  • Ordering and sorting: Source order is preserved within each keyword and used for position. There is no sortBy, relevance-ranking, category, date, or detail-enrichment option.
  • Blocked behavior: Challenge pages, visible CAPTCHA frames, access-denied text, unusual-traffic text, and similar signals are logged and reflected in run status, never written as dataset rows. The Actor does not mutate browser anti-bot signals, spoof navigator.webdriver, or bypass sign-in or access controls.
  • Proxy behavior: Proxy use is opt-in. If a requested proxy cannot be created, the run fails closed rather than silently falling back to direct access. proxyUsed in OUTPUT_SUMMARY reflects the accepted proxy configuration, not a claim that Pinterest returned data.

Tips and advanced options

  • Use complete, audience-facing phrases rather than one-character prefixes when relevance matters.
  • Split large campaigns into smaller runs or raise maxItems only within its 500-row limit; the cap is global, not per keyword.
  • Use locale consistently when comparing markets, and preserve inputKeyword plus locale in downstream joins.
  • Keep maxRequestRetries at 0 for deterministic outcomes; raise it only for transient navigation failures.
  • The repository test suite exercises the parser and relevance filter with local fixture records.
  • For recursive, bounded expansion, pass the accepted suggestions into the Pinterest Keywords Discovery Tool rather than expecting this Actor to paginate.

Troubleshooting and support

No suggestions are returned

A successful empty response completes with NO_RESULTS. A blocked or failed request is reported in the run log and summary; if no suggestion rows were stored, the Actor run fails. NO_RELEVANT_SUGGESTIONS means the public response did not meet the complete-keyword contract; BLOCKED, CAPTCHA, or navigation codes indicate transport/source access issues. A proxy can change transport reliability but cannot make private or sign-in-gated data public.

Suggestions look unrelated

Confirm the input is the complete phrase you intend to research and inspect inputKeyword, suggestion, and sourceUrl together. The Actor deliberately rejects partial-query resource responses and token-unrelated suggestions. Report a reproducible case with the run ID if a returned row violates that contract.

How do I report a problem or use the API?

Use the Actor’s Issues tab for bugs and include the run ID, sanitized input shape, OUTPUT_SUMMARY, a redacted run log, and the affected keyword. The API tab exposes the same input, dataset, and key-value-store endpoints for programmatic use. Do not include cookies, credentials, or private account data in an issue.

Use this Actor only for information that Pinterest makes publicly accessible and in accordance with Pinterest’s Terms, robots directives, applicable law, and your own obligations. Do not use it to collect private data, evade access controls, or infer sensitive attributes. You are responsible for lawful use, rate choices, retention, and downstream processing. This Actor is an independent community tool and is not affiliated with, endorsed by, or sponsored by Pinterest.