Snapchat Popular Accounts Scraper: Story & Spotlight Content avatar

Snapchat Popular Accounts Scraper: Story & Spotlight Content

Pricing

from $2.99 / 1,000 results

Go to Apify Store
Snapchat Popular Accounts Scraper: Story & Spotlight Content

Snapchat Popular Accounts Scraper: Story & Spotlight Content

Scrape popular Snapchat accounts and their Story and Spotlight content. Extract account details, post captions, media URLs, timestamps, views, likes, and engagement data for influencer research, content discovery, trend analysis, and competitor monitoring.

Pricing

from $2.99 / 1,000 results

Rating

0.0

(0)

Developer

SimpleAPI

SimpleAPI

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

2 days ago

Last modified

Share

Snapchat Popular Accounts Scraper — Story, Spotlight & Subscriber Data

Scrape public Snapchat profiles by keyword or URL and get back exact subscriber counts, verified badges, category, bio and website — plus, unlike a plain profile scraper, every profile's Story ("curated") and Spotlight highlight albums broken into individual snap items: media URL, thumbnail URL, timestamp and (for Spotlight) a real caption-track URL. Results are pushed as structured JSON dataset rows, one row per profile and one row per highlight snap. It is used for creator/brand research by niche, competitive monitoring, and feeding real Snapchat media links into downstream pipelines. No Snapchat login or developer account is required to run it.

What is Snapchat Popular Accounts Scraper: Story & Spotlight Content?

It is an Apify Actor that discovers public Snapchat accounts — by keyword, by pasting an Explore/Spotlight listing URL, or by pasting a direct profile URL — and scrapes each one's public profile page. No Snapchat account, login, or API key is needed; every request is a plain HTTP GET against snapchat.com. For every profile scraped, it also enumerates that profile's Story and Spotlight highlight albums snap-by-snap, so a single run returns both the account-level data and its highlight media inventory.

Key capabilities:

  • 🔍 Keyword discovery across Snapchat's Explore and Spotlight-search surfaces, merged and de-duplicated into one profile list per keyword
  • 🔗 Direct URL mode — paste an Explore/Spotlight listing URL to scrape its profiles, or a single profile URL to scrape it directly
  • 👤 Full profile fields — username, display name, bio, exact subscriber count, verified badge, category/subcategory, website URL, snapcode image URL, stable account ID
  • 🎞️ Story & Spotlight highlight snaps — per-snap media type, media URL, thumbnail URL, timestamp, and (Spotlight only) a caption-track URL, capped per profile so run size stays predictable
  • ⚙️ Independent toggles for Story highlights, Spotlight highlights, and Spotlight-search discovery, so you can scope a run to exactly the surfaces you want
  • 📤 Structured Apify dataset output, exportable to JSON, CSV, Excel, XML, or RSS from the Apify Console like any Apify dataset

What data can I extract with Snapchat Popular Accounts Scraper: Story & Spotlight Content?

Every run returns two row types in the same dataset: a profile row per scraped account and a highlight snap row per Story/Spotlight snap collected from it.

FieldExample valueUse case
id"123456789"Stable account identifier for de-duplication across runs
username"natgeo"Unique handle, used to build the profile URL
displayName"National Geographic"Human-readable name for reports and CRM records
bio"Experience the world through the eyes of..."Positioning/messaging research
subscriberCount18500000Exact subscriber count, not a rounded bucket
isVerifiedtrueFilter to verified/official accounts
location.country""Reserved field — see limitations below
location.state""Reserved field — see limitations below
location.displayAddress""Public address string, when the profile publishes one
profileInfo.category"news_media"Snapchat's own category tag
profileInfo.subcategory"magazine"Snapchat's own subcategory tag
profileInfo.tier0Always 0 — see limitations below
profileInfo.websiteUrl"https://www.nationalgeographic.com"Outbound contact/traffic link
profileInfo.snapcodeImageUrl"https://app.snapchat.com/..."Scannable snapcode image
profileInfo.sameAsLinks["https://instagram.com/natgeo"]Linked social profiles, when published
profileInfo.logoUrl / heroImageUrl"https://cf-st.sc-cdn.net/..."Profile artwork
profileInfo.createdAt / lastUpdatedAt"2019-06-04T12:00:00+00:00"Profile lifecycle timestamps
flags.hasCuratedHighlights / hasSpotlightHighlights / hasStorytrueWhether the profile has content on each surface
flags.isBrandProfiletrueCategory/subcategory-derived brand flag
flags.isLensCreator / hasLensesfalseWhether the page exposes a public Lenses list
metadata.accountId"123456789"Same value as id
metadata.profileIconColor"#F4E04D"Profile accent color
searchKeyword"fashion"The keyword that discovered this profile ("" for URL-sourced profiles)
sourceSections["explore"]Which discovery surface(s) actually returned this profile
sourceProfileUrl"https://www.snapchat.com/add/natgeo"The exact URL fetched
highlightContent.snapsCollected20How many highlight snap rows were pushed for this profile
highlightContent.curatedSnapsAvailable / spotlightSnapsAvailable47Total real snap count found on each surface, before capping
highlightContent.cappedByLimittrueWhether maxHighlightSnapsPerProfile truncated the real total
scrapedAt"2026-08-15T10:04:12+00:00"Row scrape timestamp

🎬 Story & Spotlight highlight snaps

Each highlight snap is pushed as its own dataset row, labelled type: "highlightSnap" and isChild: true, linked back to its profile by parentUsername and parentId. Fields: highlightType (curated or spotlight), highlightIndex, highlightId, highlightTitle, snapIndex, snapMediaType (raw 0/1), snapMediaTypeLabel (photo/video), mediaUrl, mediaPreviewUrl (thumbnail), captionTranscriptUrl (Spotlight-only VTT track, null otherwise), timestampInSec, snapTimestamp (ISO), sourceProfileUrl, scrapedAt, and runId. A media/marketing team can pull every Spotlight video URL and caption track for a set of creators in one run instead of opening each profile manually.

🧭 Targeting and discovery data

searchKeyword and sourceSections tell you which query and which surface (Explore vs Spotlight-search) actually surfaced each profile, so you can separate genuinely keyword-matched results from Spotlight-search's broader pool. profileInfo.category / subcategory group profiles by Snapchat's own taxonomy, and subscriberCount / isVerified let you rank or filter the list after the run.

How does this scraper differ from the official Snapchat API?

Snapchat does publish a Public Profile API with a Creator Discovery component, but its own developer FAQ (checked 2026-08-15) states plainly: "Right now we don't offer an API for fetching all Creators" — to discover creators at all, you "reach out to your Snapchat POC to get the list of Profile IDs." The Search API can look up one creator at a time by exact username or display name, but there is no keyword- or category-based bulk discovery endpoint.

FeatureSnap Public Profile APIThis Actor
Bulk creator discovery by keyword/category❌ Not offered — requires a Profile ID list from a Snapchat point of contact (per official FAQ, checked 2026-08-15)searchKeywords searches Explore and Spotlight-search directly
Lookup of one known creator✅ Search API by exact username/display nameprofileAndListingUrls accepts a direct profile URL
Story/Spotlight highlight snap URLsPublic metrics only (views/shares); full asset access needs the creator to opt in or OAuth into a partner platform (per official docs, checked 2026-08-15)✅ Returned directly — no creator opt-in required
Access requirementsPartner-level relationship with SnapchatRuns immediately on Apify, no approval process
Output formatDefined by the partner API (not evaluated here)Consistent Apify dataset row, JSON/CSV/Excel/XML export

Why can't I just discover creators through the official API?

Because, per Snap's own developer FAQ (checked 2026-08-15), there is no endpoint for fetching all creators — you need either a pre-existing list of Profile IDs supplied by a Snapchat point of contact, or the creator's exact username/display name for the Search API. That blocks any workflow that starts from a topic or niche instead of a known identity. This Actor covers that specific gap: it searches Snapchat's own public Explore and Spotlight-search pages the way a browser would, by keyword, and returns the full profile plus highlight-snap data for every account it finds — no Profile ID list or partner relationship needed.

Use the official API if you already have a partner relationship with Snapchat and a known set of Profile IDs to pull official metrics for. Use this Actor when you need to discover accounts by topic or niche right now, without applying for API access.

How to use data extracted from Snapchat?

📊 Marketing and influencer/partnership teams

Run searchKeywords for a niche (e.g. "fitness", "skincare"), filter the output on subscriberCount and isVerified, and use profileInfo.websiteUrl and profileInfo.category to shortlist creators or brand accounts for outreach — all before opening a single profile in-app.

🏢 Social media agencies

Point profileAndListingUrls at a client's own profile plus its competitors, and re-run periodically to compare subscriberCount, flags.hasStory/hasSpotlightHighlights, and highlightContent.snapsCollected over time as a lightweight benchmarking snapshot.

🔬 Market research and intelligence

Run several keywords across a category (e.g. "fashion", "beauty", "streetwear") and use profileInfo.category/subcategory and sourceSections to map how many accounts cluster where, and which surface (genuinely keyword-scoped Explore vs. the broader Spotlight-search pool) actually surfaced them.

🤖 AI agents and automated pipelines

Feed mediaUrl, mediaPreviewUrl, and (for Spotlight) captionTranscriptUrl from the highlight snap rows into a retrieval or captioning pipeline as an agent tool, without writing an HTML scraper of your own.

⬇️ Input sample

ParameterRequiredTypeConstraintsDescription
searchKeywordsNoarraystringListKeywords to discover accounts (e.g. fashion, beauty, fitness). Each keyword is looked up across Snapchat's Explore and Spotlight-search surfaces, the two profile lists are merged and de-duplicated, and every unique profile is scraped — including its Story/Spotlight highlight content. Explore results are genuinely keyword-scoped; Spotlight-search results are a broader discovery surface and are not reliably keyword-filtered. Same field as keywords in the base actor.
profileAndListingUrlsNoarraystringListDirect Snapchat URLs to use instead of, or alongside, keywords: an Explore/Spotlight listing URL (its profiles are discovered and scraped) or a single profile URL (scraped directly). Same field as startUrls in the base actor.
maxAccountsPerKeywordNointegermin 1, max 200, prefill 10Cap on how many discovered profiles to scrape per keyword (or per listing URL). Same field as maxProfilesPerUrl in the base actor.
maxConcurrentFetchesNointegermin 1, max 20, prefill 10How many profile pages to fetch in parallel. Same field as maxConcurrentProfiles in the base actor.
includeCuratedHighlightsNobooleandefault trueCollect snap items from the profile's Story ("curated") highlight albums.
includeSpotlightHighlightsNobooleandefault trueCollect snap items from the profile's Spotlight highlight albums. Spotlight snaps are the only ones that can carry a real caption-track URL.
maxHighlightSnapsPerProfileNointegermin 0, max 2000, prefill 20Cap on how many highlight snap rows to save per profile, combined across Story and Spotlight. Real coverage swings from a handful of snaps to 700+ per profile. 0 = collect none (flags/counters on the profile row still populate).
includeSpotlightDiscoveryNobooleandefault trueWhen using keywords: also search Snapchat's Spotlight-search surface for profiles (in addition to Explore). This surface is not reliably keyword-scoped — turn it off to discover accounts only from the genuinely keyword-matched Explore surface.
keywordsNoarraystringListLegacy alias for searchKeywords. Only read when searchKeywords is not set.
startUrlsNoarraystringListLegacy alias for profileAndListingUrls. Only read when profileAndListingUrls is not set.
maxProfilesPerUrlNointegermin 1, max 200Legacy alias for maxAccountsPerKeyword.
maxConcurrentProfilesNointegermin 1, max 20Legacy alias for maxConcurrentFetches.
proxyConfigurationNoobjectproxy editor, prefill {"useApifyProxy": false}Optional Apify Proxy configuration. Default is a direct connection — the Actor automatically escalates to Apify Proxy (datacenter, then residential) if Snapchat blocks a request or serves a suspiciously small page, up to 6 escalation attempts per request.

Neither searchKeywords/keywords nor profileAndListingUrls/startUrls is individually required — but the run needs at least one of the four populated, or it logs a warning and exits with no rows.

{
"searchKeywords": ["fashion", "streetwear"],
"profileAndListingUrls": ["https://www.snapchat.com/add/natgeo"],
"maxAccountsPerKeyword": 25,
"maxConcurrentFetches": 10,
"includeCuratedHighlights": true,
"includeSpotlightHighlights": true,
"maxHighlightSnapsPerProfile": 50,
"includeSpotlightDiscovery": true,
"proxyConfiguration": { "useApifyProxy": false }
}

Common pitfall: leaving includeSpotlightDiscovery on for a niche-specific run pulls in Snapchat's general Spotlight-search pool, which is not reliably keyword-filtered — you can end up with profiles unrelated to your keyword mixed into the results. If you need purely keyword-matched accounts, set includeSpotlightDiscovery: false so discovery uses only the genuinely keyword-scoped Explore surface, and check each row's sourceSections to confirm.

⬆️ Output sample

Output is typed, normalized JSON — one row per profile and one row per highlight snap, in the same dataset, exportable as JSON, CSV, Excel, XML, or RSS from the Apify Console.

Profile row:

{
"id": "123456789",
"username": "natgeo",
"displayName": "National Geographic",
"bio": "Experience the world through the eyes of NAT GEO photographers.",
"subscriberCount": 18500000,
"isVerified": true,
"location": {
"country": "",
"state": "",
"displayAddress": ""
},
"profileInfo": {
"logoUrl": "https://cf-st.sc-cdn.net/natgeo-logo.jpg",
"heroImageUrl": "https://cf-st.sc-cdn.net/natgeo-hero.jpg",
"createdAt": "2019-06-04T12:00:00+00:00",
"category": "news_media",
"subcategory": "magazine",
"tier": 0,
"websiteUrl": "https://www.nationalgeographic.com",
"snapcodeImageUrl": "https://app.snapchat.com/web/deeplink/snapcode?username=natgeo",
"sameAsLinks": ["https://instagram.com/natgeo"],
"lastUpdatedAt": "2026-07-30T09:12:00+00:00"
},
"flags": {
"isLensCreator": false,
"hasLenses": false,
"hasHighlights": true,
"isBrandProfile": true,
"isSnapchatPlusSubscriber": false,
"hasCuratedHighlights": true,
"hasSpotlightHighlights": true,
"hasStory": true
},
"metadata": {
"accountId": "123456789",
"organizationId": "",
"profileIconColor": "#F4E04D"
},
"searchKeyword": "fashion",
"scrapedAt": "2026-08-15T10:04:12+00:00",
"sourceSections": ["explore"],
"sourceProfileUrl": "https://www.snapchat.com/add/natgeo",
"highlightContent": {
"curatedSnapsAvailable": 47,
"spotlightSnapsAvailable": 12,
"snapsCollected": 50,
"cappedByLimit": true
}
}

Highlight snap row (child of the profile row above):

{
"type": "highlightSnap",
"isChild": true,
"parentUsername": "natgeo",
"parentId": "123456789",
"highlightType": "spotlight",
"highlightIndex": 0,
"highlightId": "abcdef123456",
"highlightTitle": "Wildlife Highlights",
"snapIndex": 3,
"snapMediaType": 1,
"snapMediaTypeLabel": "video",
"mediaUrl": "https://community-cdn.snap.com/media/example-snap.mp4",
"mediaPreviewUrl": "https://community-cdn.snap.com/media/example-snap-thumb.jpg",
"captionTranscriptUrl": "https://community-cdn.snap.com/media/example-snap-captions.vtt",
"timestampInSec": 1755250000,
"snapTimestamp": "2026-08-15T05:26:40+00:00",
"sourceProfileUrl": "https://www.snapchat.com/add/natgeo",
"scrapedAt": "2026-08-15T10:04:15+00:00",
"runId": "AbCdEfGhIjKlMnOpQr"
}

How do you filter and target specific accounts?

  1. Keyword search vs. direct URL. searchKeywords discovers new accounts by topic across Explore and Spotlight-search — best when you don't already know who you're looking for. profileAndListingUrls skips discovery: paste an Explore/Spotlight listing URL to scrape everyone on it, or a single profile URL (.../add/username) to scrape exactly one account.
  2. Discovery-surface scope. includeSpotlightDiscovery controls whether keyword search also queries Snapchat's Spotlight-search pool, which is not reliably keyword-scoped. Turn it off for purely keyword-matched results from Explore; leave it on for maximum discovery coverage and check each row's sourceSections to see which surface actually matched.
  3. Highlight-content scope. includeCuratedHighlights and includeSpotlightHighlights are independent toggles — run Story-only, Spotlight-only, or neither. maxHighlightSnapsPerProfile bounds the combined total per profile (0 returns the profile row with no snap rows, but highlightContent counters still tell you what exists).
  4. Volume controls. maxAccountsPerKeyword caps how many profiles are scraped per keyword or URL (1–200); maxConcurrentFetches controls request parallelism (1–20).
{ "searchKeywords": ["fitness"], "includeSpotlightDiscovery": false, "maxAccountsPerKeyword": 25 }
{ "profileAndListingUrls": ["https://www.snapchat.com/add/natgeo"], "maxHighlightSnapsPerProfile": 500 }
{ "searchKeywords": ["beauty", "skincare"], "maxAccountsPerKeyword": 100, "maxHighlightSnapsPerProfile": 0, "maxConcurrentFetches": 20 }

▶️ Want to try other Snapchat scrapers?

ScraperWhat it extracts
Snapchat Spotlight Scraper By Link, ID Or Share URLSingle Spotlight video details from a link, ID, or share URL
Snapchat User Spotlight Scraper By Keyword & HashtagSpotlight videos discovered by keyword or hashtag
Reddit Scraper: User Profiles & Subreddit ActivityReddit user profiles and their subreddit activity
TikTok Scraper With Repost Insights DataTikTok profile and video data, including repost insights
Instagram Post Details Scraper With Engagement DataInstagram post details with engagement metrics

How to extract Snapchat data programmatically

This Actor runs as a standard Apify Actor: one API call starts a run, and structured JSON comes back from the dataset — no Snapchat login or API key involved.

Python example

from apify_client import ApifyClient
client = ApifyClient("<YOUR_APIFY_TOKEN>")
run_input = {
"searchKeywords": ["fashion"],
"maxAccountsPerKeyword": 20,
"maxHighlightSnapsPerProfile": 30,
}
run = client.actor("<YOUR_USERNAME>/snapchat-popular-accounts-scraper-story-and-spotlight-content").call(
run_input=run_input
)
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
if item.get("type") == "highlightSnap":
continue # profile rows only
print(item["username"], item["subscriberCount"], item["profileInfo"]["category"])

Export to spreadsheets or CRM

Use the Apify Console's dataset Export button, or the dataset API with ?format=csv / ?format=xlsx, to turn a run's rows into a spreadsheet. Map username → Name, displayName → Display Name, subscriberCount → Subscribers, profileInfo.websiteUrl → Website, profileInfo.category → Category, and sourceProfileUrl → Profile Link for a straightforward CRM or spreadsheet import.

Yes — this Actor only collects data that Snapchat already serves on its own public web pages, without logging in or bypassing any access control. That said, Snapchat profile and highlight data can include personal data about identifiable individual creators (display name, bio, linked social accounts), so GDPR and CCPA considerations apply if you store or process it in bulk: you need a lawful basis for collection, must honor deletion/access requests where applicable, and should not use the data to build profiles of individuals beyond what they've published publicly. Scraping is also subject to Snapchat's own Terms of Service, which govern how you may use the platform, separately from data-protection law. Consult legal counsel for commercial applications involving bulk storage of personal data.

❓ FAQ

What happens to profiles that no longer exist or can't be loaded?

They are skipped, not saved. If a profile page can't be parsed (no username found) or keeps failing after the Actor's connection-method escalation attempts are exhausted, it is logged as a warning in the run log and no row is pushed for it — so it is never charged.

Can I get Story and Spotlight highlight content along with the profile data?

Yes. includeCuratedHighlights and includeSpotlightHighlights both default to true, and every collected snap is pushed as its own highlightSnap row (capped by maxHighlightSnapsPerProfile, default 20, max 2000). The profile row's highlightContent object always shows the real curated/spotlight totals found, even if the cap truncated what was saved.

How accurate is the subscriber count and category data?

The Actor returns data exactly as it appears on the public Snapchat profile page at request time — subscriberCount is the exact figure Snapchat serves, not a rounded estimate. Accuracy depends on how current Snapchat's own page is; re-run the Actor for a fresh snapshot if you need up-to-date numbers.

How many records can I get per run?

Up to maxAccountsPerKeyword (max 200) profiles per keyword or URL, and up to maxHighlightSnapsPerProfile (max 2000) highlight snap rows per profile. There is no separate run-level cap beyond how many keywords/URLs you supply.

Can I discover accounts from only the genuinely keyword-matched surface?

Yes. Set includeSpotlightDiscovery to false so keyword discovery uses only Snapchat's Explore surface, which is genuinely keyword-scoped — the Spotlight-search surface is not reliably keyword-filtered and can surface unrelated profiles if left on.

Do I need to configure a proxy to run this scraper?

No — proxyConfiguration defaults to a direct connection. The Actor automatically escalates to Apify Proxy (datacenter, then residential) if Snapchat returns a block or a suspiciously small page, up to 6 escalation attempts per request, so proxy configuration is optional rather than required.

What does setting maxHighlightSnapsPerProfile to 0 do?

It collects zero highlight snap rows for every profile, but the profile row itself is still saved with highlightContent.curatedSnapsAvailable and spotlightSnapsAvailable populated, so you can still see how much highlight content exists without paying for the snap rows.

Does this scraper work with Claude, ChatGPT, and AI agent frameworks?

It is callable as a standard Apify Actor run via apify-client or the Apify REST API from any agent framework that can make HTTP calls — there is no verified MCP server for this specific Actor, so integrate it as an HTTP/API tool rather than an MCP tool.

Can I use this without a Snapchat API key or developer account?

Yes. You only need an Apify account to run the Actor — no Snapchat login, API key, or developer account is required, since every request is a plain fetch of Snapchat's own public pages.

Conclusion

Snapchat Popular Accounts Scraper: Story & Spotlight Content turns keyword or URL input into structured profile data and per-snap Story/Spotlight highlight media in a single run — exact subscriber counts, category tags, and real media/caption URLs, not estimates. It's built for marketing and research teams who need to discover Snapchat accounts by niche rather than by a pre-known list, something the official Snapchat API does not currently support for bulk discovery. Start a run from the Apify Console or trigger it via the Apify API to get your first dataset of profiles and highlight snaps.