Pinterest Trend Spy ๐Ÿ•ต๏ธ avatar
Pinterest Trend Spy ๐Ÿ•ต๏ธ

Pricing

Pay per usage

Go to Apify Store
Pinterest Trend Spy ๐Ÿ•ต๏ธ

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

Pay per usage

Rating

0.0

(0)

Developer

Danang Dev

Danang Dev

Maintained by Community

Actor stats

1

Bookmarked

1

Total users

0

Monthly active users

2 days ago

Last modified

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

ParameterTypeRequiredDefaultDescription
keywordstringYeskitchen gadgetsSearch term for Pinterest (e.g., 'home decor', 'fashion trends')
maxItemsintegerNo100Maximum pins to scrape. Minimum: 10, Maximum: 2000
proxyConfigurationobjectYesResidentialProxy settings - residential proxies recommended for best results

Example Input

{
"keyword": "minimalist home decor",
"maxItems": 500,
"proxyConfiguration": {
"useApifyProxy": true,
"apifyProxyGroups": ["RESIDENTIAL"]
}
}

Output

Output destination

The actor writes results to an Apify dataset as JSON records. The dataset is organized into 5 pre-configured views for easy filtering and analysis:

  1. Pins - All scraped pins with full details
  2. AI Prompts - Pins with auto-generated Midjourney/DALL-E prompts
  3. Emails - Pins containing extracted email addresses
  4. Autocomplete - Keyword suggestions from Pinterest autocomplete
  5. Search Intent - Keyword analysis and intent insights

The dataset is designed for direct consumption by analytics tools, ETL pipelines, and downstream APIs without post-processing.

Record envelope (all items)

Every record includes the following stable identifiers:

  • type (string, required) - Record type: "pin", "suggestion", "related_trends", or "search_intent"
  • keyword (string, required) - The search keyword used
  • scraped_at (string, required) - ISO 8601 timestamp

Recommended idempotency key: type + ":" + (pin_id | item | keyword)
Use this to deduplicate and upsert records in downstream systems when the same entity appears across multiple inputs.

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). null if 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
{
"type": "related_trends",
"keyword": "home decor",
"related_trends": [
"Small Bedroom Ideas",
"Boho Living Room",
"Japandi Style",
"Dark Academia Aesthetic",
"Cottagecore Kitchen",
"Minimalist Apartment"
],
"trend_count": 6,
"scraped_at": "2026-01-24T10:30:00.000000+00:00"
}

Field descriptions:

  • type (string, required): Always "related_trends"
  • related_trends (array, required): List of micro-niche keywords from search bubbles
  • trend_count (number, required): How many micro-niches were found

Note: Related trends are stored separately in a dedicated entry, not duplicated in each pin to save space and improve efficiency.

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.

Support

For help, open an issue on the actor page in Apify Console. Include the input you used (redacted), the run ID, expected vs. actual behavior, and a small output sample if available.