Pinterest Scraper - Pins, Images and Source Links avatar

Pinterest Scraper - Pins, Images and Source Links

Pricing

from $1.60 / 1,000 pin returneds

Go to Apify Store
Pinterest Scraper - Pins, Images and Source Links

Pinterest Scraper - Pins, Images and Source Links

Search Pinterest by keyword. A pin is an image plus a link back to its source. That is often a product page or a recipe. Every row has that link, the title, description, image URL, video URL, pinner and board. Repin and comment counts are empty. Pinterest stopped sending them. $1.60 per 1,000 pins.

Pricing

from $1.60 / 1,000 pin returneds

Rating

5.0

(3)

Developer

Dami's Studio

Dami's Studio

Maintained by Community

Actor stats

1

Bookmarked

22

Total users

5

Monthly active users

a day ago

Last modified

Share

Pinterest Search Scraper: pins by keyword, with the link each one points at

Type a search the way you would type it into Pinterest and every matching pin comes back as a row: the title, the description, the full-size image, who pinned it, which board it sits on, and the outbound link. That link is the field most people are here for, because it usually goes to a product page or a recipe.

The awkward part, said up front: repin and comment counts arrive empty on every row. Pinterest stopped putting them in the search response. Across 239 pins from twelve runs both were null every time, so a "top pins by repins" pipeline cannot be built on this. reactionCount is the engagement number you do get, and it was null on about a quarter of those rows.

InputOne search query
OutputOne row per pin
Ceiling2,000 pins per run
Account neededNone, no login and nothing to paste
Price$1.60 per 1,000 pins, flat on every plan

๐Ÿ“Œ What Pinterest Search Scraper does

It runs your keywords through Pinterest's own search and pages through the results until it has as many pins as you asked for. Sponsored pins are left out unless you ask for them, and you can keep video pins only.

Paging stops early when two pages in a row bring nothing new. That is usually Pinterest running out of fresh results for a narrow query rather than anything going wrong, which is why a run can end with fewer pins than you asked for.

Keyword search is the whole scope. Boards, profiles and single pin pages are not part of it.

๐Ÿ“ฅ What you give it

{
"query": "minimalist tattoo",
"maxItems": 200,
"includePromoted": false
}
FieldDefaultWhat it is
querynone, and requiredYour keywords, exactly as you would type them into Pinterest. The form starts with home office setup in the box.
maxItems50How many pins to collect, 1 to 2,000. This is the dial that sets what a run costs.
includeVideosOnlyfalseKeep only pins that came through with a playable video file. Read the note under the field table before using it.
includePromotedfalseInclude sponsored pins. Off by default.
notionConnectornoneOptional. Write every pin into Notion as a page when the run finishes. Authorize the connector once under Settings, API and Integrations, MCP connectors, then pick it here.
notionParentIdnoneOptional. The Notion data source to write into. Empty creates the pages privately in your workspace.
proxyConfigurationonOptional. Leave it alone for a normal run. You can supply your own servers here if you have a reason to.

๐Ÿ“ค What you get back

A real row from a recent run:

{
"ok": true,
"id": "492649955299899",
"title": "ADHD-Friendly Desk Setup for Better Focus & Productivity",
"description": "Create a calmer, more organized workspace with simple ADHD-friendly desk essentials. ...",
"pinUrl": "https://www.pinterest.com/pin/492649955299899/",
"imageUrl": "https://i.pinimg.com/originals/ef/3a/d0/ef3ad07436299cc349cbf8dfddb8a30d.png",
"isVideo": false,
"videoUrl": null,
"link": "https://www.zafranorganicbd.store/2026/08/adhd-friendly-desk-setup-for-better.html",
"dominantColor": "#a99477",
"repinCount": null,
"commentCount": null,
"reactionCount": 53,
"createdAt": "2026-09-09T15:49:57.000Z",
"pinnerUsername": "nanaliv30",
"pinnerName": "Nanaliving",
"boardName": "My Home",
"boardUrl": "https://www.pinterest.com/nanaliv30/my-home/",
"isPromoted": false
}

The description is cut short above. The real one runs on with the pinner's hashtags.

FieldWhat it is
linkWhere the pin points: the product page, article or recipe. The reason most people run this. null when the pin links nowhere.
imageUrlThe full-size image, or the widest one Pinterest offers for that pin.
isVideo, videoUrlisVideo is true only when a playable video file came through, and videoUrl holds it.
repinCount, commentCountnull on every row. Pinterest no longer sends them.
reactionCountReactions on the pin. null when there are none or Pinterest leaves it out.
dominantColorThe pin's main colour as hex, Pinterest's own value.
createdAtWhen the pin was created, in UTC.
pinnerUsername, pinnerName, boardName, boardUrlWho pinned it and where it lives.
isPromotedWhether it is a sponsored pin.

title, description, link, createdAt, boardName, boardUrl and dominantColor can each be null when Pinterest leaves that field out for a pin.

๐Ÿงพ Reading the output

Pins carry ok: true. Anything that goes wrong is written as a single row with ok: false and an errorCode rather than an empty dataset, and those rows are not charged.

CodeWhat it means
BAD_INPUTNo search query was given.
NO_RESULTSThe search ran and matched nothing. With Video pins only switched on, a narrow query hits this often.
BLOCKEDPinterest refused the request. Run it again.
NETWORKPinterest was unreachable or answered badly.

One case has no diagnostic row: if a results page fails part-way through a long run, the pins already collected are delivered and billed and the run stops there. So a run that returns 380 of the 1,000 pins you asked for, with no error row, hit that. Run it again for the rest.

The Console's overview table includes a repinCount column, which is the one that is always empty. Nothing is missing from your data, the column has nothing to show.

โ–ถ๏ธ How to run it

  1. Open Pinterest Search Scraper and click Try for free.
  2. Type your keywords into Search query.
  3. Set Max pins. Start around 20 to see the shape of the output.
  4. Click Start.
  5. Download the dataset as JSON, CSV or Excel, or read it from the Apify API.

๐Ÿ’ฐ How much does it cost?

$1.60 per 1,000 pins. Flat on every Apify plan, no volume tiers.

You pay per pin row delivered. Diagnostic rows are not billed, and neither is a search that matches nothing. Max pins is a hard cap, so it doubles as your spending limit.

๐Ÿ’ก What people use it for

  • Pulling the outbound links behind a niche, which is a list of the sites and shops that niche actually buys from.
  • Watching which products keep resurfacing in a category, by running the same query weekly.
  • Collecting reference images with their sources attached, instead of a folder of screenshots.
  • Finding the boards and accounts that dominate a topic, by counting pinnerUsername and boardName across a few hundred rows.
  • Feeding titles and descriptions into a summariser or a Notion database for a content brief.

๐Ÿšง What it does not do

  • Keyword search only. No boards, no profiles, no single pin pages, no related pins.
  • No repin or comment counts. They are null on every row and that is Pinterest's doing.
  • Video pins are under-counted. A pin whose video file Pinterest leaves out of the search response reads as an image here, so Video pins only will miss some genuine video pins.
  • No login, so anything private, secret-board or account-specific is out of reach.
  • Images and videos are not downloaded. You get the URLs.
  • Promoted pins were not seen in testing, even with the switch on. Pinterest decides what to serve.
  • Pinterest's ranking decides the order, and a narrow query can run out of fresh pins well before your ceiling.
  • Rows are a snapshot. A pin can be edited or deleted after it was read.

๐Ÿงญ Which social scraper do you need?

If you wantUse
Pinterest pins by keyword, with their outbound linksThis one
Public LinkedIn posts by keywordLinkedIn Post Search Scraper
Instagram posts and reels under a hashtagInstagram Hashtag Scraper
Instagram profiles with follower counts and bio linksInstagram Profile Scraper
Tweets by keyword, with advanced search operatorsTwitter (X) Search Scraper

โ“ Questions people ask

Do I need a Pinterest account? No. Nothing to log into, nothing to paste.

Can I scrape a specific board or user? Not with this one. It searches pins by keyword.

Why did I get fewer pins than I asked for? Either the query ran dry, which is common on narrow searches, or the run stopped early on a failed page. A NO_RESULTS row tells the first apart; no row at all with a partial set means the second.

Can I get the video file? When Pinterest includes it, yes, in videoUrl. It is not there for every video pin.

Can I schedule it? Yes. Dedupe on id between runs and you only see pins that are new to you.

Is this legal? Pins are public, and they carry someone's account name, which data-protection law covers, so have a reason for collecting it. Apify's write-up on scraping and the law is a good start, and we are not lawyers.

๐Ÿ†˜ If something breaks

Open the Issues tab on the actor page. Send the query you used and the run ID. The errorCode on the diagnostic row usually names the problem on its own.