Teachers Pay Teachers Scraper avatar

Teachers Pay Teachers Scraper

Pricing

from $7.50 / 1,000 resources

Go to Apify Store
Teachers Pay Teachers Scraper

Teachers Pay Teachers Scraper

[πŸ’° $7.5 / 1K] Extract Teachers Pay Teachers resources by search term, product URL, or store β€” titles, prices, sale prices, quality scores, ratings, grade levels, subjects, formats, standards, author info, thumbnails, and optional individual reviews.

Pricing

from $7.50 / 1,000 resources

Rating

0.0

(0)

Developer

SolidCode

SolidCode

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

5 days ago

Last modified

Share

Pull educational resources from Teachers Pay Teachers (TpT) at scale β€” prices, sale prices, quality scores, ratings, grade levels, subjects, formats, standards alignment, teacher-author store details, and optional individual buyer reviews. Search by keyword, paste a single resource link, or point it at a whole store to pull that seller's entire catalogue. Built for curriculum companies, edtech market-research teams, and TpT sellers who need structured competitive data across thousands of resources without copying it off one product page at a time.

Why This Scraper?

  • Three ways in β€” keyword, resource URL, or whole-store URL β€” search a term like "fractions", paste a /Product/... link for one resource, or paste a /store/... link to pull a competitor's full catalogue. Mix all three freely in a single run.
  • 19 grade-level filters β€” PreK through Grade 12 plus Homeschool, Adult Education, Higher Education, Staff, and Not Grade Specific β€” so you only collect resources for the audience you sell to.
  • 20+ subject and resource-type filters β€” Math, English Language Arts, Science, Social Studies, World Languages, Arts, Music, Special Education, and ESL/EFL/ELL subjects, plus format filters for worksheets, task cards, Google Apps, PDF, PowerPoint, Easel activities, and more.
  • Free-only and price-range targeting β€” set a minimum and maximum USD price, or set the maximum to 0 to return only free resources β€” the fastest way to map a market's freebies.
  • Quality-score threshold (0–5 scale) β€” TpT gives each resource an aggregate quality score out of 5; filter to 3.0+, 3.5+, 4.0+, 4.5+, or 5.0 (top rated) to surface only proven best-sellers.
  • Individual buyer reviews on demand β€” flip one switch to collect each resource's reviews as separate rows: reviewer, numeric rating (0–4), the qualitative satisfaction label, comment text, grades taught, and buyer location β€” the raw material for sentiment analysis.
  • Every resource carries standards alignment β€” Common Core and other academic standards notation (e.g. 3.NF.A.1) attached to each resource, so you can map a catalogue to a curriculum framework.
  • Two clean record types, parent-to-child linked β€” product rows and review rows, each review joined to its resource by product id and URL, delivered in separate Resources and Reviews tabs.
  • On-sale detection and four sort orders β€” filter to currently discounted resources and order results by relevance, rating, price (low or high), or newest.

Use Cases

Market Research

  • Map an entire subject-and-grade niche to size the opportunity before building a resource
  • Track how many resources exist for a trending topic and how they are priced
  • Compare free versus paid resource density across grade bands
  • Benchmark quality scores and rating counts across a category

Competitive Pricing

  • Pull a competitor's full store catalogue from a single /store/... link
  • Compare list price versus sale price to reverse-engineer discount strategies
  • Find the price band where top-rated resources cluster in your subject
  • Monitor which competitor resources are currently on sale

Lead Generation

  • Build lists of high-performing teacher-authors by store name and store URL
  • Identify prolific sellers in a subject to target for partnerships or acquisition
  • Surface authors whose resources consistently score 4.0 to recruit as contributors

Curriculum & Content Research

  • Filter resources by Common Core and other standards to fill curriculum gaps
  • Discover the most popular formats (task cards, Google Apps, Easel) for a grade level
  • Assemble a shortlist of top-rated worksheets and lessons for a unit

Academic Research

  • Study pricing, ratings, and review sentiment across the educational-resource marketplace
  • Analyze which grade levels and subjects attract the most reviews
  • Measure the relationship between quality score, price, and review volume

Getting Started

The simplest run β€” one search term, 100 resources:

{
"searchQueries": ["fractions"],
"maxResults": 100
}

Fourth-grade math worksheets rated 4.0 and up, under $5, newest first:

{
"searchQueries": ["multiplication"],
"gradeLevels": ["4th-grade"],
"subjects": ["math"],
"resourceTypes": ["worksheets"],
"minRating": "4",
"priceMax": 5,
"sort": "newest",
"maxResults": 200
}

Store Catalogue with Reviews

Pull a seller's full catalogue and collect up to 50 reviews per resource for sentiment analysis:

{
"searchQueries": ["https://www.teacherspayteachers.com/store/example-teacher-store"],
"includeReviews": true,
"maxReviewsPerProduct": 50,
"maxResults": 0
}

Free Resources Only

Map every free resource for a topic β€” set the maximum price to zero:

{
"searchQueries": ["sight words"],
"priceMax": 0,
"sort": "rating",
"maxResults": 100
}

Input Reference

What to Scrape

ParameterTypeDefaultDescription
searchQueriesstring[]["fractions"]Search terms (e.g. "fractions", "sight words") and/or TpT links. A resource page (/Product/...) returns that resource; a store page (/store/...) returns that seller's resources. Each entry is processed on its own.

Filters

ParameterTypeDefaultDescription
gradeLevelsstring[][]Only include resources for these grade levels. 19 options from PreK / Preschool through 12th grade, plus Higher education, Adult education, Homeschool, Staff, and Not grade specific. Empty means all grades.
subjectsstring[][]Only include resources in these subject areas: Math, English Language Arts, Science, Social Studies / History, Specialty, Arts, Music, World Languages, Holidays / Seasonal, English Language Learning (ESL/EFL/ELL), Special Education, For All Subjects. Empty means all subjects.
resourceTypesstring[][]Only include these resource types or file formats: Worksheets, Activities, Task cards, Centers, Assessment, Lesson plans, Games, Printables, Projects, Google Apps, PDF, Microsoft PowerPoint, Microsoft Word, Easel activity, Internet activities. Empty means all types.
onSaleOnlybooleanfalseOnly include resources that are currently on sale.
minRatingstring"0"Only include resources with at least this overall quality score. Options: Any score, 3.0 & up, 3.5 & up, 4.0 & up, 4.5 & up, 5.0 & up (top rated). TpT shows an aggregate quality score out of 5.
priceMinnumbernullOnly include resources priced at or above this amount in USD. Empty means no minimum.
priceMaxnumbernullOnly include resources priced at or below this amount in USD. Set to 0 to return only free resources. Empty means no maximum.

Results

ParameterTypeDefaultDescription
sortstring"relevance"Order for search and store results: Relevance, Rating, Price: low to high, Price: high to low, Newest. Ignored for direct resource URLs. "Price: high to low" ranks the highest-priced resources within a relevance-based sample of up to 500 results, so on very large result sets the ranking is over that sample rather than the entire catalogue.
maxResultsinteger100Maximum resources to collect for each search term or store. Set to 0 to collect everything (a broad search or large store can hold thousands).

Reviews

ParameterTypeDefaultDescription
includeReviewsbooleanfalseAlso collect each resource's individual ratings and reviews as separate rows. Adds rows and cost β€” a popular resource can have thousands of ratings. Off by default.
maxReviewsPerProductinteger50When reviews are enabled, the maximum number of reviews to collect per resource. Set to 0 to collect all reviews.

Output

Every row carries a recordType field β€” product or review β€” so you can filter cleanly downstream. The Overview tab holds every record; the Resources and Reviews tabs are clean, type-filtered subsets of the same run.

Resource (recordType: "product")

{
"recordType": "product",
"id": "1234567",
"type": "DigitalDownloadResource",
"title": "Fraction Flip Book",
"canonicalSlug": "Fraction-Flip-Book-1234567",
"url": "https://www.teacherspayteachers.com/Product/Fraction-Flip-Book-1234567",
"descriptionSnippet": "A hands-on flip book for teaching equivalent fractions...",
"price": 4.5,
"salePrice": 3.6,
"onSale": true,
"overallQualityScore": 3.9,
"totalEvaluations": 442,
"gradeLevels": ["3rd-grade", "4th-grade"],
"subjectAreas": ["math"],
"resourceCategories": ["activities", "printables"],
"formats": ["activities", "printables"],
"taxonomyTagIds": ["math", "3rd-grade", "fractions"],
"standards": ["3.NF.A.1", "4.NF.A.1"],
"authorId": "98765",
"authorName": "The Fraction Teacher",
"authorSlug": "the-fraction-teacher",
"storeUrl": "https://www.teacherspayteachers.com/store/the-fraction-teacher",
"thumbnailOriginalUrl": "https://ecdn.teacherspayteachers.com/thumbitem/original.jpg",
"thumbnailLargeUrl": "https://ecdn.teacherspayteachers.com/thumbitem/large.jpg",
"searchQuery": "fractions",
"scrapedAt": "2026-07-04T14:30:00Z"
}

Core Fields

FieldTypeDescription
recordTypestringAlways "product"
idstringTpT resource id
typestringResource type (DigitalDownloadResource, BundleResource, etc.)
titlestringResource title
canonicalSlugstringURL slug for the resource
urlstringFull resource URL
descriptionSnippetstringShort description snippet
searchQuerystringThe input entry that produced this row
scrapedAtstringISO timestamp of extraction

Pricing & Quality

FieldTypeDescription
pricenumberList price in USD
salePricenumberSale price in USD (0 when not on sale; null for an on-sale resource whose listing does not expose the discounted price)
onSalebooleanWhether the resource is currently on sale
overallQualityScorenumberAggregate quality score on a 0–5 scale
totalEvaluationsintegerNumber of ratings/reviews the resource has received

Classification

FieldTypeDescription
gradeLevelsstring[]Grade-level tags
subjectAreasstring[]Subject-area tags
resourceCategoriesstring[]Resource type tags
formatsstring[]File-format tags (PDF, Google Apps, etc.)
taxonomyTagIdsstring[]All taxonomy tag ids, including fine-grained topics
standardsstring[]Aligned academic standards (e.g. 3.NF.A.1)

Author & Media

FieldTypeDescription
authorIdstringAuthor/store id
authorNamestringAuthor/store display name
authorSlugstringAuthor/store slug
storeUrlstringFull store URL
thumbnailOriginalUrlstringOriginal-size thumbnail URL
thumbnailLargeUrlstringLarge thumbnail URL

Review (recordType: "review")

Emitted only when includeReviews: true. Each review links back to its resource by productId and productUrl.

{
"recordType": "review",
"id": "eval-556677",
"productId": "1234567",
"productUrl": "https://www.teacherspayteachers.com/Product/Fraction-Flip-Book-1234567",
"rating": 4,
"ratingLabel": "EXTREMELY",
"ratingScaleMax": 4,
"title": "Perfect for my centers",
"comment": "My students loved this β€” clear layout and easy to assemble.",
"createdAt": "2026-05-12T09:15:00Z",
"reviewerId": "44556",
"reviewerName": "Ms. Rivera",
"reply": "So glad it worked for your class β€” thank you!",
"gradesUsed": ["3rd-grade"],
"buyerLocation": "Texas",
"searchQuery": "fractions",
"scrapedAt": "2026-07-04T14:30:00Z"
}
FieldTypeDescription
recordTypestringAlways "review"
idstringReview id
productIdstringParent resource id (links to the product row)
productUrlstringParent resource URL
ratingnumberNumeric rating on a 0–4 scale
ratingLabelstringRaw satisfaction label (e.g. EXTREMELY, VERY)
ratingScaleMaxnumberMaximum of the rating scale (always 4)
titlestringReview title / buyer-experience headline
commentstringReviewer comment text (nullable)
createdAtstringWhen the review was left
reviewerIdstringReviewer user id
reviewerNamestringReviewer display name (when public)
replystringAuthor's reply to the review (nullable)
gradesUsedstring[]Grade levels the buyer taught with the resource
buyerLocationstringBuyer's teaching location (when public)
searchQuerystringThe input entry that produced the parent resource
scrapedAtstringISO timestamp of extraction

Tips for Best Results

  • Point a store URL at a competitor to pull their whole catalogue. Paste a /store/... link with maxResults: 0 to collect every resource a seller lists β€” the fastest way to build a full competitive picture.
  • Leave reviews off unless you need sentiment. Reviews add a row per review, and a popular resource can carry thousands. Turn includeReviews on only for the runs where buyer feedback matters, and cap maxReviewsPerProduct to keep volume in check.
  • Set the maximum price to zero to map the freebies. priceMax: 0 returns only free resources β€” a clean way to see what a market gives away versus what it charges for.
  • Filter to 4.5 & up (or 5.0 for top rated) to skip the long tail. The minRating threshold runs on TpT's 0–5 aggregate quality score, so setting a high floor surfaces only proven best-sellers and you spend results on resources buyers actually rate highly.
  • Start with a modest maxResults to test filters. Run 20–50 first to confirm your grade, subject, and format filters return the right resources, then scale up.
  • Combine terms and links in one run. Mix keywords, resource URLs, and store URLs in searchQueries β€” each entry is processed independently with the same filters applied to search and store results.
  • Filters are ignored for direct resource URLs. A /Product/... link always returns that exact resource; grade, subject, price, and sort settings only shape search and store results.

Pricing

From $7.50 per 1,000 resources + $0.50 per 1,000 reviews β€” undercuts the market for TpT resource extraction while keeping optional reviews cheap and pay-only-if-you-use-them. This actor is billed pay-per-event: you are charged per resource and per review collected. No compute or time-based charges β€” you pay only for the resources and reviews you collect. Bronze, Silver, and Gold subscribers pay progressively less; loyalty discounts apply automatically on the Apify platform.

EventNo discountBronzeSilverGold
Per 1,000 resources$9.00$8.50$8.00$7.50
Per 1,000 reviews$0.60$0.56$0.53$0.50

Example total costs at the Gold rate:

What you collectResources costReviews costTotal
500 resources, no reviews$3.75$0.00$3.75
500 resources + 20 reviews each (10,000 reviews)$3.75$5.00$8.75
2,000 resources, no reviews$15.00$0.00$15.00

A "resource" is one product row; a "review" is one review row. Reviews are only collected when you enable them. Platform fees (storage) are additional and depend on your Apify plan.

Integrations

Export data in JSON, CSV, Excel, XML, or RSS. Connect to 1,500+ apps via:

  • Zapier / Make / n8n β€” Workflow automation
  • Google Sheets β€” Direct spreadsheet export
  • Slack / Email β€” Notifications on new results
  • Webhooks β€” Trigger custom APIs on run completion
  • Apify API β€” Full programmatic access

This actor is designed for legitimate market research, competitive analysis, curriculum research, and academic study. Users are responsible for complying with applicable laws and Teachers Pay Teachers' terms of service, including making reasonable-rate requests and respecting content usage rules. Do not use extracted data for spam, harassment, or any illegal purpose, and handle any personal data (such as reviewer names) responsibly and in line with applicable privacy regulations.