Which obtainable proxy demand signals can feed Scribble Works' tier-5 demand slot, and which to wire first
The question
"What proxy demand signals (Etsy/TPT bestseller category rankings, Pinterest/Google Trends search volume by worksheet theme, KDP kids-workbook category data) could substitute for Scribble Works' nonexistent download/search data to drive the creation-prioritization algorithm's demand-weighted build slot?"
Context: the v2 prioritization waterfall ([[2026-09-07-creation-prioritization-algorithm-v2]]) reserves tier 5 as "one exploration/demand-driven slot" and admits it is a placeholder with no real input. This brief is about the mechanism for that one slot. It does not cover general category selection.
What we already know (from the vault)
- v2 rejected weighted sums as "product decisions laundered as arithmetic" and made demand the last tier, below founder asks, remediation, seasonal quota, and oldest-unserved legal cell. Any demand input has to fit a rank-and-pick slot, not a score blended into tiers 1-4 ([[2026-09-07-creation-prioritization-algorithm-v2]]).
- The unit being ranked is a taxonomy cell. The closed facets are Age band x Skill (10 fixed values, e.g.
Letters & Phonics,Scissors & Motor Skills) x Activity x Theme (≤2 per page, and agents may not add themes) ([[2026-08-31-marketplace-taxonomy-proposal]]). Parents do not search "Letters & Phonics". Every proxy needs a hand-kept synonym map from facet value to real query strings. - Sol's outreach research had no keyword-volume data (no Keyword Planner, Ahrefs, Semrush, or Pinterest Trends exports). Its only demand number was a third-party Etsy estimate (~4,400 monthly searches vs ~88,000 listings for "preschool printable worksheets"), which it labeled directional. It picked Pinterest as the primary 90-day distribution bet and Search Console as the per-page feedback instrument ([[2026-09-06-content-outreach-research-scribble-works]]).
- First-party instrumentation does not exist yet. The strategy audit found "no dashboard... no download counter", and the audit synthesis ranks a first-party download counter as item #2 ([[2026-09-01-strategy-spec-audit]], [[2026-09-01-fresh-eyes-audit-synthesis]]). The privacy posture is "no trackers, no third-party analytics" ([[2026-09-02-charter-rebaseline-draft]]). The personal-shopper request text is sent to the model and then discarded. Only counters persist ([[2026-09-01-personal-shopper-spec]]).
- Amazon category mechanics from the Squarely work: each title gets 3 self-selected categories, and ranking #1 in a narrow node is reachable at low volume. That makes a low BSR in a thin kids' node weak evidence of real demand ([[2026-07-14-amazon-puzzle-book-buyer-conversion-mechanics]]).
What the web says
- Pinterest Trends has an official, documented API endpoint. It is
GET /v5/trends/keywords/{region}/top/{trend_type}, with OAuth scopeuser_accounts:read, rate-limit categorytrends_read, and sandbox enabled.trend_typeis one ofgrowing(quarterly upward growth),monthly,yearly, orseasonal(recent growth plus an annual recurring pattern). Filters areinterests(the list includeseducation,parenting,diy_and_crafts,animals,event_planning),ages,genders,include_keywords(returns only trends containing at least one given term), andnormalize_against_group. The cap is 50 keywords per call, returned in trend-rank order. Each keyword comes with WoW/MoM/YoY percent growth, a year of weekly 0-100 relative volume, and an optional 90-day predicted series. Normalization is per keyword unlessnormalize_against_groupis set (Pinterest API v5 OpenAPI spec, read directly). The interactive version is trends.pinterest.com. Third-party wrappers exist on Apify, but they are unnecessary given the first-party endpoint (Apify Pinterest Trends scraper). Access tier (Trial vs Standard review) was not verified. A Blotato 2026 guide says the API is free but Standard access goes through a review. - The Google Trends API is still an application-gated alpha. It was announced 2025-07-24 with a 5-year rolling window, daily/weekly/monthly/yearly aggregation, region and sub-region data, and, importantly, scaling that stays consistent across requests, so results from separate calls can be joined (Google Search Central blog, alpha signup). A community thread reports applicants getting no response (Search Central Community). Without alpha access, the options are the web UI (manual, 5-term compares) or unofficial scrapers (ScrapingBee roundup), which are fragile and outside any sanctioned access.
- Etsy's Open API v3 exposes supply, not sales.
findAllListingsActiveacceptskeywordsandtaxonomy_id, withsort_onlimited tocreated|price|updated|score. There is no bestseller sort. Listing objects includenum_favorers,tags,taxonomy_id,quantity, and creation timestamps. There is no views field and no units-sold field (Etsy OpenAPI spec, inspected directly). The free tier is reported at 10,000 requests/day (Thunderbit). The Etsy API terms page returned 403 to both WebFetch and curl, so the terms on aggregating other sellers' data are unverified. - Etsy "sales" and "search volume" numbers from third-party tools are modeled, not measured. EverBee claims about 80% accuracy on estimates built from views, favorites, reviews, and listing age. Sellers report the EverBee, Alura, and eRank numbers as "wildly incorrect" for their own connected shops, and eRank/Marmalead keyword data refreshes on a schedule rather than live (EverBee vs eRank, Thunderbit).
- TPT: no public API found, and the Terms of Service were unreadable. The TOS page is client-rendered, and the fetched HTML contained no scraping/robots clause text, so its terms on automated collection are unverified. Its seller-side traffic data covers only the seller's own store (TPT traffic documentation, via [[2026-09-06-content-outreach-research-scribble-works]]). The audience skews to teachers, not parents.
Convergences and contradictions
- Convergence: the vault's channel bet (Pinterest-first distribution) and the best-documented proxy (the Pinterest Trends API) are the same platform. The signal that ranks the slot also measures the channel the build is aimed at. No other proxy has that property.
- Contradiction: the backlog question lists "Etsy/TPT bestseller category rankings" as a candidate signal. Neither platform exposes one through a sanctioned interface. Etsy's API has no sales or bestseller sort, TPT has no API, and third-party "bestseller" numbers are modeled. The signal as written in the question does not exist in obtainable form.
- Tension: the privacy posture ("nothing stored beyond counters") currently throws away the best first-party demand signal the product already generates: what parents type into the personal shopper.
Synthesis for RDCO
Wire Pinterest Trends first. Treat everything else as a tie-break, a seasonality calendar, or not worth building. The Pinterest endpoint is first-party, documented, weekly, and filterable to interests=education,parenting in the US. include_keywords maps directly onto a facet synonym list, and normalize_against_group=true fixes the per-keyword normalization that would otherwise make "dinosaur" and "halloween" incomparable. The mechanism has four steps. (1) Keep a hand-authored map from each closed Theme and Skill value to 2-5 parent-language query strings ("Letters & Phonics" to "alphabet tracing", "letter worksheets", "phonics printable"). Agents may not edit it, mirroring the taxonomy's anti-slop rule. (2) Once a week, per value, call yearly and seasonal with the group-normalized flag and store the raw response snapshot. (3) Rank values by recent group-normalized volume. For a seasonal hit, the week the predicted series starts rising becomes the window-open date for tier 3's per-holiday windows, which v2 says each holiday needs but hasn't defined. (4) Tier 5 picks the oldest-unserved legal cell whose theme or skill ranks highest. That is a lexicographic pick, not a blended score, so it stays consistent with v2's no-weighted-sum ruling. Log the snapshot ID with every pick so the founder can audit why a cell won.
Know the noise before trusting it. Pinterest returns only the top 50 trending keywords per filter set. A theme with no hits is censored, not zero, so an empty result should leave the cell at its tier-4 position rather than push it down. The data is Pinterest's audience (heavily female, planner/saver behavior), which fits a parent buying printables but will overweight crafty or seasonal themes relative to skill-drill themes. Rank on a four-week rolling window, not single weeks. Google Trends is the better calendar (5 years of seasonality, consistent scaling across requests), but only if alpha access comes through. Apply now, since it costs nothing, and use it to cross-check Pinterest's seasonal windows rather than as the tier-5 input. Etsy's API is worth a small role as a supply denominator and vocabulary source. Listing counts per taxonomy_id plus keyword, and favorites velocity (num_favorers / listing age), can break ties between two equally-demanded themes toward the less saturated one. Tag co-occurrence can also seed the synonym map. That use waits until someone reads the Etsy API terms directly, because the terms page blocked automated reads.
Signals that sound good but are unobtainable or misleading: Etsy "bestseller" or sales rankings (not in the API; every number is a model). eRank/EverBee "monthly searches" (modeled, scheduled refresh, reported wildly wrong). TPT bestseller data (no API, terms unverified, teacher audience, grade/standards framing that doesn't map to parent-facing themes). KDP/Amazon kids-workbook BSR: per-node Best Seller lists are public, but the node is dominated by brand publishers and grade-level workbooks, not themes. A single sale moves a thin node, which is the "#1 in a narrow node is easy" effect from the Squarely brief. Bulk collection means either PA-API (gated on Associates status) or scraping against Amazon's conditions of use. At most it is a rough skill-by-grade sanity check done by hand, never an automated per-theme input. Google Keyword Planner "exact volumes" also belong on this list, since accounts without ad spend generally see only bucketed ranges (general practitioner knowledge, not verified this run).
The real fix is first-party, and the waterfall should say so. Every proxy above goes stale once the product's own signals exist. Three are cheap and fit the privacy posture. (a) The first-party download counter the audits already rank #2, broken down by cell. (b) Search Console queries per landing page once the indexable pages from Sol's plan ship. (c) Personal-shopper requests classified into facet values at request time, with only facet counters persisted. That means no free text and no child data, and it arguably fits "nothing stored beyond counters". But it changes what a shopper request leaves behind, so it is a founder call, not a silent build. Define tier 5's input as a pluggable source with a precedence order: first-party counters (once N≥ some floor) > Pinterest group-normalized rank > Etsy supply tie-break. When the counter crosses the floor, the proxy retires without a redesign.
Why this is in the vault
It closes the "Open gap" named in [[2026-09-07-creation-prioritization-algorithm-v2]]. It specifies which input tier 5 consumes, how to map it to the closed taxonomy, and how the proxy gets retired, so the waterfall can be implemented without inventing a demand score. It also gives the v2 design's undefined per-holiday seasonal windows (tier 3) a data source.
Open follow-ups
- Does a Pinterest business account plus a Trial-access app get
trends_read, or does the trends endpoint need Standard access review? (Live-account test.) - What do the Etsy API Terms of Use say about aggregating other sellers' listing and favorites data for our own product decisions? (Needs a human/browser read; the page blocks automated fetches.)
- Should personal-shopper requests be classified into facet counters before discard? This is a privacy-posture change and needs a founder ruling.
- For the 10 Skill values and the current Theme list, how many return any hits under
interests=education,parenting? This decides whether censoring makes Pinterest usable at the skill level or only at the theme/seasonal level. (Build/test task.) - What minimum first-party download count per cell should retire the proxy? (Researchable against small-sample ranking literature.)
Related
- [[2026-09-07-creation-prioritization-algorithm-v2]]
- [[2026-09-06-content-outreach-research-scribble-works]]
- [[2026-08-31-marketplace-taxonomy-proposal]]
- [[2026-09-01-strategy-spec-audit]]
- [[2026-09-01-fresh-eyes-audit-synthesis]]
- [[2026-09-01-personal-shopper-spec]]
- [[2026-09-02-charter-rebaseline-draft]]
- [[2026-07-14-amazon-puzzle-book-buyer-conversion-mechanics]]
Sources
Vault:
- 01-projects/printables-product/2026-09-07-creation-prioritization-algorithm-v2.md
- 01-projects/printables-product/2026-09-06-content-outreach-research-scribble-works.md
- 01-projects/printables-product/2026-08-31-marketplace-taxonomy-proposal.md
- 01-projects/printables-product/2026-09-01-strategy-spec-audit.md
- 01-projects/printables-product/2026-09-01-fresh-eyes-audit-synthesis.md
- 01-projects/printables-product/2026-09-01-personal-shopper-spec.md
- 01-projects/printables-product/2026-09-02-charter-rebaseline-draft.md
- 06-reference/research/2026-07-14-amazon-puzzle-book-buyer-conversion-mechanics.md
Web:
- Pinterest API v5 OpenAPI spec (primary; trends endpoint, parameters, response schema): https://raw.githubusercontent.com/pinterest/api-description/main/v5/openapi.yaml
- Pinterest Trends UI: https://trends.pinterest.com
- Blotato, Pinterest API pricing/access 2026: https://www.blotato.com/blog/pinterest-api-pricing
- Apify Pinterest Trends scraper: https://apify.com/yumitori/pinterest-trends-scraper
- Google, Introducing the Google Trends API (alpha): https://developers.google.com/search/blog/2025/07/trends-api
- Google Trends API alpha signup: https://developers.google.com/search/apis/trends
- Search Central Community, alpha application no response: https://support.google.com/webmasters/thread/430972036/google-trends-api-alpha-access-application-%E2%80%94-no-response-received?hl=en
- ScrapingBee, Google Trends scraping APIs 2026: https://www.scrapingbee.com/blog/best-google-trends-api/
- Etsy Open API v3 OpenAPI spec (primary; findAllListingsActive params, ShopListing fields): https://www.etsy.com/openapi/generated/oas/3.0.0.json
- Etsy API Terms of Use: https://www.etsy.com/legal/api (HTTP 403 to WebFetch and curl; NOT read, flagged)
- Thunderbit, Etsy scrapers tested: https://thunderbit.com/blog/best-etsy-scrapers
- EverBee vs eRank: https://blog.everbee.io/everbee-vs-erank-comparison
- TPT Terms of Service: https://www.teacherspayteachers.com/Terms-of-Service (403 to WebFetch; curl HTML is client-rendered with no clause text; NOT read, flagged)
- TPT traffic documentation (via vault outreach doc): https://help.teacherspayteachers.com/hc/en-us/articles/360042198292-How-is-traffic-data-calculated
Research-cap note: 3 WebSearch, 3 WebFetch (all three failed: one JS shell, two 403s), 4 QMD queries. The two primary specs (Pinterest, Etsy) were then read via curl, using the vault's documented 403 workaround. That goes past the 3-fetch cap and is disclosed here.