Pinterest Trend Spy ๐ต๏ธ
Pricing
$3.99/month + usage
Pinterest Trend Spy ๐ต๏ธ
Scrape viral products & trends from Pinterest search Get micro-niche keywords, autocomplete suggestions, search intent analysis, AI-ready Midjourney prompts, and email extraction. Perfect for dropshippers, marketers, and SEO specialists
Pricing
$3.99/month + usage
Rating
0.0
(0)
Developer
Danang Dev
Actor stats
1
Bookmarked
23
Total users
7
Monthly active users
19 days ago
Last modified
Categories
Share
Pinterest Trend Spy
Scrape viral products and trending content from Pinterest search results without login. Includes micro-niche discovery, autocomplete keyword suggestions, search intent insights, auto-generated Midjourney/DALL-E prompts, and email extraction. Perfect for dropshippers, affiliate marketers, SEO specialists, and content creators.
Overview
Pinterest Trend Spy collects structured data from Pinterest search results, including pins, related micro-niche keywords, autocomplete suggestions, search intent analysis, AI-ready prompts, and contact information. It helps you turn Pinterest content into consistent JSON records that are easy to analyze and integrate. Pinterest is a major discovery platform where trends, styles, and product intent surface earlyโmaking the data valuable for research and planning. Runs are automated and repeatable so you can save time and keep datasets up to date.
Why Use This Actor
- Market research / analytics: Quantify trends, themes, and engagement across niches with repeatable data pulls. Discover micro-niches through related search bubbles that reveal untapped opportunities.
- SEO & keyword research: Extract autocomplete keyword suggestions and analyze search intent (commercial, informational, transactional) to optimize your Pinterest SEO strategy. Get competition levels and category insights.
- Product & content teams: Discover popular topics and visual styles to inform content calendars and product positioning. Auto-generated AI prompts help create similar visuals without copyright issues.
- Developers / data engineering pipelines: Feed structured Pinterest data into warehouses, dashboards, and downstream services. Data is organized into 5 dataset views for easy filtering.
- Monitoring / competitive tracking: Track trending pins and micro-niches over time to detect shifts in strategy and emerging trends.
Input Parameters
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
keyword | string | Yes | kitchen gadgets | Search term for Pinterest (e.g., 'home decor', 'fashion trends') |
maxItems | integer | No | 100 | Maximum pins to scrape. Minimum: 10, Maximum: 2000 |
proxyConfiguration | object | Yes | Residential | Proxy settings - residential proxies recommended for best results |
Example Input
{"keyword": "minimalist home decor","maxItems": 500,"proxyConfiguration": {"useApifyProxy": true,"apifyProxyGroups": ["RESIDENTIAL"]}}
Output
Output structure at a glance
When you run the actor (or use the local runner), the result is a single JSON object with this top-level shape. Same structure whether you export the Apify dataset as JSON or save from the local run:
| Field | Type | Description |
|---|---|---|
keyword | string | Search keyword used (e.g. "kitchen gadgets", "home decor") |
total_pins | number | Total number of pins scraped |
related_trends | string[] | Micro-niche keywords from Pinterest search bubbles (e.g. "Unique", "3d printed", "Boho Living Room") โ great for finding sub-niches |
autocomplete_keywords | object[] | Autocomplete suggestions as records: { keyword, type: "suggestion", item, scraped_at } |
autocomplete_keywords_list | string[] | Same suggestions as a simple list of strings |
search_intent | object | Search intent analysis: primary intent, competition level, categories, top terms, insights |
pins | object[] | All scraped pins with pin_id, title, image_url, source_url, destination_link, ai_prompt, emails, scraped_at |
Example โ top-level summary (real output shape):
{"keyword": "home decor","total_pins": 22,"related_trends": ["Ideas","Diy","Inspo","Rustic","Earthy cottage","Western","Christmas","Cozy","Aesthetic","Luxury"],"autocomplete_keywords": [],"autocomplete_keywords_list": [],"search_intent": {"primary_intent": "mixed","intent_distribution": { "commercial": 0, "informational": 3, "transactional": 0, "navigational": 0, "mixed": 23 },"total_keywords_analyzed": 26,"competition_level": "high","long_tail_ratio": 0.04,"avg_word_count": 1.19,"categories": [{ "category": "home_decor", "relevance_score": 0.08, "matched_keywords": 2 },{ "category": "diy", "relevance_score": 0.08, "matched_keywords": 2 }],"top_related_terms": [{ "term": "ideas", "frequency": 3 },{ "term": "diy", "frequency": 2 },{ "term": "earthy", "frequency": 2 }],"insights": {"is_commercial": false,"is_informational": false,"has_long_tail_opportunities": false,"competition_advantage": false}},"pins": [ ... ]}
Use related_trends for micro-niche ideas; search_intent for SEO and competition hints; pins for products, images, AI prompts, and emails.
Output destination (Apify)
On Apify, the actor writes results to a dataset as separate JSON records. The dataset has 5 pre-configured views for filtering:
- Scraped Pins โ All pins with image, title, destination link, AI prompt, emails
- AI-Ready Prompts โ Pins with auto-generated Midjourney/DALL-E prompts
- Extracted Emails โ Pins that contain email addresses
- Hidden Micro-Niches โ Related trends (search bubbles)
- Autocomplete Keyword Suggestions โ Pinterest autocomplete suggestions
- Search Intent Insights โ Intent analysis (commercial/informational, competition, categories)
When you export the dataset as JSON, you can reassemble it into the single-object format above (keyword, total_pins, related_trends, search_intent, pins) for easy use in pipelines or analytics.
Record envelope (dataset items)
Each dataset record includes:
- type (string) โ
"pin","suggestion","related_trends", or"search_intent" - keyword (string) โ The search keyword used
- scraped_at (string) โ ISO 8601 timestamp
Idempotency key: type + ":" + (pin_id | item | keyword) for deduplication and upserts.
Examples
Example: pin (type = "pin")
{"type": "pin","keyword": "kitchen gadgets","pin_id": "98234723847","title": "Smart Vegetable Cutter - 10x Faster Chopping","image_url": "https://i.pinimg.com/originals/ab/cd/ef/abcdef123456.jpg","source_url": "https://www.pinterest.com/pin/98234723847/","destination_link": "https://amazon.com/dp/B0EXAMPLE","ai_prompt": "/imagine prompt: Smart Vegetable Cutter, high quality, photorealistic, professional photography, 4k, detailed lighting, trending on pinterest --ar 9:16 --v 6","emails": ["contact@example.com"],"scraped_at": "2026-01-24T10:30:45.123456+00:00"}
Field descriptions:
- type (string, required): Always
"pin" - pin_id (string, required): Unique Pinterest pin identifier
- title (string, optional): Pin title/description from alt text
- image_url (string, optional): High-resolution image URL (originals when available)
- source_url (string, required): Direct link to the pin on Pinterest
- destination_link (string, optional): External link (if available).
nullif no external link - ai_prompt (string, optional): Auto-generated Midjourney/DALL-E prompt. Empty string if title is too short
- emails (array, optional): Email addresses found in pin content or destination links. Empty array if none found
Example: autocomplete suggestion (type = "suggestion")
{"keyword": "fashion","type": "suggestion","item": "fashion outfits","scraped_at": "2026-01-24T10:30:00.000000+00:00"}
Field descriptions:
- type (string, required): Always
"suggestion" - item (string, required): The autocomplete keyword suggestion
- keyword (string, required): The original search keyword
Example: search intent (type = "search_intent")
{"type": "search_intent","keyword": "fashion","primary_intent": "commercial","intent_distribution": {"commercial": 15,"informational": 8,"transactional": 2,"navigational": 0,"mixed": 5},"competition_level": "medium","categories": [{"category": "fashion","relevance_score": 0.85,"matched_keywords": 17}],"top_related_terms": [{"term": "outfit", "frequency": 12},{"term": "style", "frequency": 8}],"insights": {"is_commercial": true,"is_informational": false,"has_long_tail_opportunities": true,"competition_advantage": false},"long_tail_ratio": 0.6,"avg_word_count": 2.8,"total_keywords_analyzed": 30,"scraped_at": "2026-01-24T10:30:00.000000+00:00"}
Field descriptions:
- type (string, required): Always
"search_intent" - primary_intent (string, required): Main intent: "commercial", "informational", "transactional", "navigational", or "mixed"
- intent_distribution (object, required): Count of keywords by intent type
- competition_level (string, required): "high", "medium", or "low" (based on keyword specificity)
- categories (array, optional): Detected Pinterest categories with relevance scores
- top_related_terms (array, optional): Most common words across all keywords
- insights (object, required): Actionable insights (is_commercial, has_long_tail_opportunities, etc.)
- long_tail_ratio (number, required): Ratio of long-tail keywords (3+ words)
- avg_word_count (number, required): Average words per keyword
- total_keywords_analyzed (number, required): Total keywords analyzed
Example: related trends (type = "related_trends")
{"type": "related_trends","keyword": "home decor","related_trends": ["Ideas","Diy","Rustic","Earthy cottage","Cozy","Aesthetic"],"trend_count": 6,"status": "ok","scraped_at": "2026-03-11T00:32:33.009664+00:00"}
Field descriptions:
- type (string): Always
"related_trends" - related_trends (array): Micro-niche keywords from Pinterest search bubbles (same as top-level
related_trendsin the consolidated output) - trend_count (number): Number of micro-niches found
- status (string, optional):
"ok","empty","failed", or"rate_limited"(Apify runs)
Note: In the consolidated output (e.g. from the local runner or exported dataset), related_trends is a top-level array; in the Apify dataset it also appears as a single record of type "related_trends" for the Hidden Micro-Niches view.
Data guarantees & handling
- Best-effort extraction: Fields may vary by region/session/availability/UI experiments. Some pins may not have destination links (internal Pinterest content).
- Optional fields: Always null-check in downstream code. Email extraction depends on content availability.
- Deduplication: Recommend using
type + ":" + (pin_id | item | keyword)as idempotency key. - Data validation: All pin data is validated before being pushed to the dataset. Invalid data is skipped with detailed logging.