substack-notes-scraper
Scrapes a Substack Notes page and exports engagement data to a formatted .xlsx file. Use when asked to download, analyse, or export Substack Notes performance data including likes, comments, and restacks. Produces a formatted spreadsheet with conditional formatting, summary stats, and per-note engagement metrics.
Profile →npx skills add mohitagw15856/pm-claude-skills --skill substack-notes-scraper --agent claude-code
Same command for any agent — swap --agent for codex, cursor, copilot.
Weekly change comes from our own snapshots, not the repository page — it measures attention, not adoption.
# Substack Notes Scraper Substack has no public API for Notes analytics. You can't see likes, comments, and restacks in one place without scrolling through your feed manually. This skill scrapes the rendered Notes page, filters to only your original content, and exports everything to a spreadsheet you can actually analyze. > Credit: Originally created by a Substack newsletter author — adapted and extended for this library. --- ## Required Inputs | Input | Format | Example | |---|---|---| | Notes URL | Full URL to the Notes tab | `https://substack.com/@handle/notes` | | Author handle or name | Exact handle or display name | `@handle` or `Jane Smith` | | Date range | Plain English or explicit range | `last 30 days` or `Jan 2026 – Mar 2026` | Claude will ask for these if not provided upfront. --- ## Output Structure ### File ``` substack-notes-[handle]-[YYYY-MM-DD].xlsx ``` ### Sheet: "Notes Data" | Column | Description | |---|---| | Date | Publication date (YYYY-MM-DD) | | Text Preview | First 200 characters of the note | | Full Text | Complete note text | | Likes | Like count at time of scrape | | Comments | Comment count | | Restacks | Restack count | | Total Engagement | Likes + C
- Required Inputs
- Output Structure
- File
- Sheet: "Notes Data"
- Sheet: "Summary"
- Instructions for Claude
- Step 1: Validate inputs
- Step 2: Fetch the Notes page
- Step 3: Paginate through all notes in the date window
- Step 4: Parse each note
- Step 5: Filter
- Step 6: Calculate Total Engagement
- Step 7: Identify top 20% by Likes
- Step 8: Build the .xlsx file
What does the substack-notes-scraper skill do?
Scrapes a Substack Notes page and exports engagement data to a formatted .xlsx file. Use when asked to download, analyse, or export Substack Notes performance data including likes, comments, and restacks. Produces a formatted spreadsheet with conditional formatting, summary stats, and per-note engagement metrics.
How do I install it?
Run `npx skills add mohitagw15856/pm-claude-skills --skill substack-notes-scraper --agent claude-code` — it drops the skill into your project so the agent can pick it up. Swap the --agent value for codex, cursor or copilot if you use one of those.
Where does this skill come from?
From mohitagw15856/pm-claude-skills, a repository with 1,255 stars. We read it straight from the repository tree rather than a submitted listing, so what you see here is what is actually published.
Is a popular skill a good skill?
Not necessarily. Stars measure attention, not adoption — a repository can trend for a week and be abandoned. That is why we show the weekly change from our own snapshots next to the total, instead of a single flattering number.