# Pinterest Trends Scraper (`aboo.script/trends-pinterest-scraper`) Actor

\[💰$2 / 1K] ⚡ Fast Pinterest Trends scraper. No login, no API key. Get growing, top monthly, top yearly and seasonal search trends in 26 regions by keyword, interest, age, gender and date: rank, search volume, weekly, monthly and yearly change, image and 12-month history.

- **URL**: https://apify.com/aboo.script/trends-pinterest-scraper.md
- **Developed by:** [Aboo Script](https://apify.com/aboo.script) (community)
- **Security:** Limited permissions
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $1.40 / 1,000 results

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.
Since this Actor supports Apify Store discounts, the price gets lower the higher subscription plan you have.

Learn more: https://docs.apify.com/actors/running/actors-in-store.md#pay-per-event

## What's an Apify Actor?

An Actor is a serverless cloud program that runs on the Apify platform. It has two run modes.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.

Apify vocabulary and the platform model are defined once, in the agent quickstart at https://apify.com/agents.md.

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.

Do not guess an integration path. Every one of them is in the agent quickstart at https://apify.com/agents.md: the Apify MCP server, Agent Skills with the Apify CLI, the JavaScript and Python clients, the REST API, and the account-free path for an agent with no human to sign in. It also carries the rule on stating cost before the first paid run.

For examples already wired to this Actor's own input schema, see the [API](#api) section below.

Each client library has reference documentation the quickstart does not restate: [JavaScript/TypeScript](https://docs.apify.com/api/client/js/docs.md) (`npm install apify-client`) and [Python](https://docs.apify.com/api/client/python/docs.md) (`pip install apify-client`).

# README

## Pinterest Trends Scraper

![Pinterest Trends Scraper](https://i.ibb.co/LzQS7k66/trends-pinterest-banner.png)

**Pinterest Trends Scraper** extracts trending search terms from [Pinterest Trends](https://trends.pinterest.com/) into clean, structured data you can download as JSON, CSV, Excel, or HTML. Pick a region and trend type, or type a keyword, and get the term, rank, search volume index, weekly, monthly and yearly change, interests, a preview image, and 12 months of weekly search history for every trend. No account or login required.

### Introduction

[Pinterest Trends](https://trends.pinterest.com/) shows what people search for on Pinterest, one of the biggest sources of shopping and lifestyle inspiration. Marketers, creators, and online sellers use it to spot rising topics weeks before they peak and to plan seasonal content and products.

The full search trends list on the website asks you to log in. This actor collects the same trend data without an account and turns it into a ready-to-use dataset. You can run it once, schedule it to run every week, or connect it to your own tools.

### What data can you extract from Pinterest Trends?

- 🔎 Trending search term and its rank in the list
- 📊 Search volume index (0 to 100, relative to the top term of the list)
- 📈 Weekly, monthly, and yearly change in percent
- 🗓️ Seasonality score and the date of the data
- 🏷️ Interests the term belongs to (Food and Drinks, Home Decor, Beauty, and more)
- 🖼️ Preview image of each trend
- 📉 Weekly search volume history of the last 12 months
- 🌍 Region and trend type (top monthly, top yearly, growing, seasonal)
- 🔗 Link to the term on Pinterest Trends

### Use Cases

- 📈 **Market research**: find the topics and products people are starting to search for, by region, age group, and gender.
- 🗓️ **Content planning**: plan Pins, blog posts, and ads around seasonal peaks before they happen.
- 🛍️ **Product research**: see which product ideas grow month over month and year over year.
- 🔑 **Keyword research**: collect every trending term that contains your keyword, with real growth numbers.
- 🤖 **AI and automation**: feed clean, structured trend data into spreadsheets, dashboards, or AI workflows.

### How to scrape Pinterest Trends step by step

1. Paste one or more Pinterest Trends URLs into **Start URLs**, or type keywords into **Keywords**.
2. Choose the **Region**, **Trend type**, and any other filters you need.
3. Set **Max results per URL or keyword** to how many trends you want per list.
4. Click **Start** and wait for the run to finish.
5. Download your data in JSON, CSV, Excel, or HTML from the **Output** tab.

### Input

- **Start URLs**: Pinterest Trends URLs, such as `https://trends.pinterest.com/` or `https://trends.pinterest.com/search/?country=US&trendsPreset=3`. Filters written in the URL (region, trend type, interests, age, gender, keywords, end date) are kept and take precedence over the filters below.
- **Keywords**: keywords to find trends for, one per line. Each keyword returns the trending terms that contain it, for example "cake" returns "birthday cake" and "wedding cake".
- **Max results per URL or keyword**: how many trends to collect for each start URL or keyword (up to 100). Use 0 for all.
- **Region**: one of the 26 regions available on Pinterest Trends, such as United States, Great Britain and Ireland, Canada, Germany, France, Brazil, or Australasia.
- **Trend type**: top monthly, top yearly, growing, or seasonal.
- **Interests**: only trends in these interests, such as Food and Drinks, Home Decor, Beauty, or Women's Fashion.
- **Age groups**: only trends searched by these age groups (18-24 up to 65+).
- **Genders**: only trends searched by these genders.
- **Exclude keywords**: skip trends that contain any of these words.
- **End date**: get the trends as they were on a past date. Leave empty for the latest data.
- **Include weekly history**: add the weekly search volume of the last 12 months to every trend.

You can use start URLs, keywords, or both in the same run.

### Input Examples

Get the growing trends in the United States:

```json
{
  "startUrls": [{ "url": "https://trends.pinterest.com/search/?country=US&trendsPreset=3" }],
  "maxResults": 5
}
```

Find trending terms that contain a keyword:

```json
{
  "searchQueries": ["cake"],
  "maxResults": 5
}
```

### Output

Each trend is saved as one item in the dataset. Here is an example of a single item (history shortened):

```json
{
  "url": "https://trends.pinterest.com/search/?terms=halloween+dirt+cake&country=US",
  "term": "halloween dirt cake",
  "rank": 1,
  "trendType": "Growing",
  "region": "US",
  "regionName": "United States",
  "endDate": "2026-10-28T00:00:00Z",
  "searchVolumeIndex": 100,
  "weeklyChange": 90,
  "monthlyChange": 600,
  "yearlyChange": -5,
  "seasonalityScore": 0.9637329,
  "interests": ["Event Planning", "Food and Drinks"],
  "imageUrl": "https://i.pinimg.com/236x/f2/fe/1c/f2fe1cdf80925736aa2830091ed284df.jpg",
  "history": [
    { "date": "2026-10-14T00:00:00Z", "searchVolumeIndex": 37 },
    { "date": "2026-10-21T00:00:00Z", "searchVolumeIndex": 51 },
    { "date": "2026-10-28T00:00:00Z", "searchVolumeIndex": 100 }
  ]
}
```

You can download the dataset in JSON, CSV, Excel, XML, or HTML, or access it through the Apify API.

### Notes

- Pinterest returns at most 100 trends per list. To get more, split your search by region, interest, age group, or keyword.
- Search volume is an index from 0 to 100, relative to the top term of the same list, not an absolute number of searches.
- A change of 10001% is the highest value Pinterest reports and means the term was barely searched before.
- Interests are only filled when you filter by interest.
- Keywords filter the trend lists: a keyword that is not part of any trending term returns no results.
- Very old dates combined with interest filters may return no trends, because Pinterest keeps less history for filtered lists.
- Only Pinterest Trends URLs are supported; other URLs are skipped.

### Why use the Pinterest Trends Scraper?

- ✅ **No login needed**: get the full search trends list without a Pinterest business account.
- 🎯 **Every filter**: region, trend type, interests, age, gender, keywords, and past dates.
- 📉 **History included**: 12 months of weekly search volume in the same item, at no extra cost.
- 🧹 **Clean data**: changes are real numbers in percent, dates use one standard format.
- 🔄 **Ready for automation**: schedule weekly runs, export to Google Sheets, or connect to Make, Zapier, and n8n.

### FAQ

#### How many trends can I scrape?

Up to 100 trends per list. Add more start URLs, keywords, or filter combinations to collect more lists in one run.

#### Do I need a Pinterest account?

No. You do not need to log in or provide any account details.

#### Can I track trends over time?

Yes. Use Apify Schedules to run the actor every week, or set an **End date** to get the trends of a past date.

#### Why are some fields empty?

Some trends do not have every value, for example a yearly change for a brand-new term. Missing values are returned as `null`.

#### Can I request a new feature or filter?

Yes. If you need other data from Pinterest Trends, such as shopping trends or moments, get in touch and it can be added.

#### Can I get a custom or private version?

Yes. The actor can be customized for your workflow, delivered as a private version, or a new scraper can be built for a different website. Use the contact details below.

### Need to scrape other social media trends?

- [TikTok Trending Hashtags Scraper](https://apify.com/aboo.script/tiktok-trending-hashtags-scraper): trending TikTok hashtags with views and posts.
- [TikTok Trending Videos Scraper](https://apify.com/aboo.script/tiktok-trending-videos-scraper): trending TikTok videos with creators and stats.
- [Pinterest Ads Repository Scraper](https://apify.com/aboo.script/ads-pinterest-scraper): Pinterest ads with targeting, reach, and creatives.
- [Google AI Mode Scraper - Answers & Sources](https://apify.com/aboo.script/google-ai-mode-scraper): Google AI Mode answers and their sources.

***

**Need help or want a custom solution?**

- 📧 Email: aboo.script@gmail.com
- 🧩 More scrapers: [Apify profile](https://apify.com/aboo.script)

### Image Credit

Image credit: [Pinterest Trends](https://trends.pinterest.com/)

# Actor input Schema

## `startUrls` (type: `array`):

Pinterest Trends URLs (https://trends.pinterest.com/ or https://trends.pinterest.com/search/?country=US\&trendsPreset=3). Filters written in the URL (country, trendsPreset, l1InterestIds, ageBucket, gender, keywordsToInclude, keywordsToExclude, endDate) take precedence over the filters below.

## `searchQueries` (type: `array`):

Keywords to find trends for. Each keyword returns the trending search terms that contain it (for example "cake" returns "birthday cake", "wedding cake"), using the filters below.

## `maxResults` (type: `integer`):

Maximum number of trends per start URL or keyword. Pinterest returns up to 100 trends per list. Use 0 for all.

## `country` (type: `string`):

Region of the trends.

## `trendType` (type: `string`):

Top monthly and top yearly list the most searched terms, growing lists the terms with the biggest rise, seasonal lists terms that peak at this time every year.

## `interests` (type: `array`):

Only trends in these interests. Leave empty for all interests.

## `ageGroups` (type: `array`):

Only trends searched by these age groups. Leave empty for all ages.

## `genders` (type: `array`):

Only trends searched by these genders. Leave empty for all genders.

## `excludeKeywords` (type: `array`):

Skip trends that contain any of these keywords.

## `endDate` (type: `string`):

Get the trends as they were on this date (YYYY-MM-DD). Leave empty for the latest available data.

## `includeHistory` (type: `boolean`):

Add the weekly search volume index of the 12 months before the end date to every trend.

## Actor input object example

```json
{
  "startUrls": [
    {
      "url": "https://trends.pinterest.com/search/?country=US&trendsPreset=3"
    }
  ],
  "searchQueries": [
    "cake"
  ],
  "maxResults": 5,
  "country": "US",
  "trendType": "growing",
  "includeHistory": true
}
```

# Actor output Schema

## `overview` (type: `string`):

No description

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {
    "startUrls": [
        {
            "url": "https://trends.pinterest.com/search/?country=US&trendsPreset=3"
        }
    ],
    "searchQueries": [
        "cake"
    ]
};

// Run the Actor and wait for it to finish
const run = await client.actor("aboo.script/trends-pinterest-scraper").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = {
    "startUrls": [{ "url": "https://trends.pinterest.com/search/?country=US&trendsPreset=3" }],
    "searchQueries": ["cake"],
}

# Run the Actor and wait for it to finish
run = client.actor("aboo.script/trends-pinterest-scraper").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print(f"💾 Check your data here: https://console.apify.com/storage/datasets/{run.default_dataset_id}")
for item in client.dataset(run.default_dataset_id).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{
  "startUrls": [
    {
      "url": "https://trends.pinterest.com/search/?country=US&trendsPreset=3"
    }
  ],
  "searchQueries": [
    "cake"
  ]
}' |
apify call aboo.script/trends-pinterest-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "type": "http",
            "url": "https://mcp.apify.com/?tools=fetch-actor-details,aboo.script/trends-pinterest-scraper"
        }
    }
}
```

The hosted server signs you in with OAuth on first connect, so no API token belongs in this config. Clients without OAuth support can send an `Authorization: Bearer <APIFY_API_TOKEN>` header instead, using a token from API & Integrations in Apify Console (https://console.apify.com/settings/integrations).

## OpenAPI specification

Download the OpenAPI definition: https://api.apify.com/v2/actors/L8EiVhxrrC70YLwFl/builds/48twfuBocWHKM1B0d/openapi.json
