Snapchat Public Profiles Scraper avatar

Snapchat Public Profiles Scraper

Pricing

from $0.96 / 1,000 profile extracteds

Go to Apify Store
Snapchat Public Profiles Scraper

Snapchat Public Profiles Scraper

Look up public Snapchat usernames and export profile identity, audience, badge, biography, links, images, Snapcode, and related-account metadata.

Pricing

from $0.96 / 1,000 profile extracteds

Rating

0.0

(0)

Developer

Stas Persiianenko

Stas Persiianenko

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

2 days ago

Last modified

Share

Look up Snapchat public profiles by username or profile URL and receive one structured record per lookup. The Actor extracts public identity, title, subscriber count, badge and category, biography, website, profile image, Snapcode, highlight state, stable business-profile ID, and related-account metadata.

Use it for creator qualification, public-account enrichment, and recurring profile monitoring without logging in to Snapchat. Public, limited non-public, and not-found usernames have explicit result states, so scheduled runs can be compared without treating a missing page as a public profile.

What can this Snapchat profile scraper do?

  • Process usernames such as nasa or copied snapchat.com/add/... profile URLs.
  • Deduplicate repeated usernames across both input fields.
  • Return current public subscriber, identity, category, biography, website, and image fields.
  • Include related-account summaries exposed on the same profile page.
  • Distinguish public, private, and not_found logged-out lookup states.
  • Cap each run at 1–1,000 unique lookups.
  • Export results through Apify datasets as JSON, CSV, Excel, XML, or RSS.
  • Run on a schedule for timestamped public-profile snapshots.

The Actor does not search Snapchat by topic, access accounts, reveal profile viewers, download Stories, or return historical subscriber counts. Each run is a current logged-out observation.

Who is this Actor for?

Creator and influencer researchers

Qualify a supplied creator list with public display names, biographies, websites, categories, badges, and subscriber counts.

Social media teams

Capture repeat snapshots of known public accounts and compare fields in a spreadsheet, database, or data warehouse.

Data and CRM teams

Normalize Snapchat usernames and public profile URLs into stable records before joining them to an existing creator or partner dataset.

Brand and competitive analysts

Review public audience scale and related-account context for a bounded set of accounts without manually opening every profile.

Why use this Actor?

  • One row per input: joins cleanly back to a source list through requestedUsername.
  • Typed lookup states: a private or absent username is not mislabeled as a public profile.
  • Rich profile fields: includes related accounts and stable identifiers, not only a page title.
  • Low-overhead HTTP collection: no browser, media download, login, or recursive related-profile crawl.
  • Repeatable timestamps: every row includes scrapedAt for comparison across scheduled runs.
  • Two input routes: use compact usernames or profile URLs copied from Snapchat.

What Snapchat profile data is extracted?

FieldMeaning
requestedUsernameNormalized username derived from the input
usernameUsername returned by Snapchat, or null when absent
displayNamePublic title or limited non-public display name
profileTypepublic, private, or not_found
profileUrlCanonical snapchat.com/add/... URL
subscriberCountPublic subscriber count when exposed
badgeCode, isVerifiedPublic badge code and normalized badge state
categoryId, subcategoryIdSnapchat public-profile taxonomy identifiers
bio, websiteUrlPublic biography and website
profilePictureUrlPublic profile image URL
snapcodeImageUrlSnapcode image endpoint
heroImageUrlSquare hero image when exposed
address, publisherTypeOptional public business metadata
businessProfileIdStable public business-profile identifier
hasStoryWhether Snapchat marks a current public Story
hasCuratedHighlightsCurated highlight availability
hasSpotlightHighlightsSpotlight highlight availability
sameAsLinksPublic external identity links
relatedAccountsSuggested account identity summaries
createdAt, lastUpdatedAtSource timestamps when exposed
scrapedAtUTC time of this Actor observation

Source fields can be missing or empty. Nullable output fields remain null; arrays remain empty when Snapchat exposes no values.

How to scrape Snapchat public profiles

  1. Open the Actor input page.
  2. Add one or more values under Snapchat usernames, with or without @.
  3. Optionally add copied profile URLs under Snapchat profile URLs.
  4. Set Maximum profiles to bound the output.
  5. Click Start.
  6. Open the Profiles dataset view.
  7. Export the dataset or connect it to your workflow.

A practical first run is:

{
"usernames": ["nasa", "shonduras"],
"maxItems": 2
}

Input parameters

usernames

An array of 1–1,000 Snapchat usernames. The optional @ prefix is removed. Usernames are normalized to lowercase and duplicates are processed once.

{
"usernames": ["nasa", "@shonduras"]
}

startUrls

An array of public profile URLs. Supported shapes are:

  • https://www.snapchat.com/add/username
  • https://www.snapchat.com/@username

Other hosts, HTTP URLs, and unrelated Snapchat paths fail input validation.

{
"startUrls": [
{ "url": "https://www.snapchat.com/add/nasa" }
]
}

maxItems

The maximum number of unique profile lookup records to save. The default is 100 and the allowed range is 1–1,000. This limit applies after deduplication across usernames and startUrls.

At least one username or URL is required.

Output example

This shortened example reflects the current normalized output shape:

{
"requestedUsername": "nasa",
"username": "nasa",
"displayName": "NASA",
"profileType": "public",
"profileUrl": "https://www.snapchat.com/add/nasa",
"subscriberCount": 762300,
"badgeCode": 1,
"isVerified": true,
"categoryId": "public-profile-category-v3-business-group",
"subcategoryId": "public-profile-subcategory-v3-government-org",
"bio": "Explore the universe and discover our home planet with official NASA snaps.",
"websiteUrl": "https://www.nasa.gov",
"profilePictureUrl": "https://cf-st.sc-cdn.net/...",
"snapcodeImageUrl": "https://app.snapchat.com/web/deeplink/snapcode?...",
"hasStory": false,
"hasCuratedHighlights": true,
"hasSpotlightHighlights": true,
"businessProfileId": "...",
"sameAsLinks": [],
"relatedAccounts": [
{
"username": "ilikerockets",
"displayName": "Destin Smarter Every Day",
"profileUrl": "https://www.snapchat.com/add/ilikerockets",
"isVerified": false
}
],
"scrapedAt": "2026-08-28T20:47:00.000Z"
}

The full dataset schema contains every field. Values and subscriber counts can change between runs.

Understanding lookup states

public

Snapchat returned a public profile payload. Public metadata fields are populated when exposed.

private

Snapchat returned limited logged-out account identity rather than public-profile metadata. Subscriber, biography, category, and related-account fields are null or empty.

not_found

Snapchat returned no matching account page. requestedUsername and the canonical attempted URL remain available for reconciliation.

A network failure is different from a not-found lookup. Failed upstream requests are retried up to two times and logged; the run fails if no requested lookup can be completed.

How much does it cost to look up Snapchat profiles?

The Actor uses pay-per-event pricing:

  • a $0.005 run-start event once per run;
  • one profile event for each dataset record.

The current BRONZE profile price is $0.0016 per lookup. Higher subscription tiers receive lower per-profile prices; the live Apify pricing panel is authoritative for your account tier.

Approximate BRONZE examples:

Profile recordsEstimated Actor charge
1$0.0066
10$0.0210
100$0.1650
1,000$1.6050

These examples include the one-time start charge and exclude rounding or unrelated platform services in your account. Private and not-found records use the same profile event because they provide a normalized requested-username result. Related-account summaries included inside a profile row have no separate event charge.

Monitoring public profile changes

Use an Apify schedule to run the same usernames daily or weekly. Store or export each run with its scrapedAt timestamp, then compare:

  • subscriberCount for audience movement;
  • bio, websiteUrl, categoryId, or isVerified for positioning changes;
  • profileType for public-state changes;
  • relatedAccounts for public recommendation changes.

The Actor returns snapshots, not a built-in historical series or alert. Your spreadsheet, database, webhook, or automation platform performs the comparison and notification step.

Export and integration workflows

Spreadsheet enrichment

Export the dataset as CSV or Excel. Join on requestedUsername to enrich a creator shortlist while preserving unavailable values as blanks.

Database or warehouse loading

Fetch JSON through the dataset API and upsert on requestedUsername plus scrapedAt. Use businessProfileId as an additional stable source identifier when available.

Scheduled CRM hygiene

Run a known creator list on a schedule and route private or not_found state changes to a manual review queue.

Webhooks and automation platforms

Use Apify run webhooks to notify Make, Zapier, n8n, or your own endpoint after a run. The downstream workflow can fetch the default dataset and apply business rules.

Use the Actor through the API

Set APIFY_TOKEN in your environment rather than pasting it into source code.

cURL

curl -X POST \
"https://api.apify.com/v2/acts/automation-lab~snapchat-public-profile-metadata/runs?waitForFinish=300" \
-H "Authorization: Bearer $APIFY_TOKEN" \
-H "Content-Type: application/json" \
-d '{"usernames":["nasa","shonduras"],"maxItems":2}'

Use the returned defaultDatasetId to download items from /v2/datasets/{datasetId}/items.

JavaScript

import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: process.env.APIFY_TOKEN });
const run = await client.actor('automation-lab/snapchat-public-profile-metadata').call({
usernames: ['nasa', 'shonduras'],
maxItems: 2,
});
const { items } = await client.dataset(run.defaultDatasetId).listItems();
console.log(items);

Python

import os
from apify_client import ApifyClient
client = ApifyClient(os.environ["APIFY_TOKEN"])
run = client.actor("automation-lab/snapchat-public-profile-metadata").call(
run_input={"usernames": ["nasa", "shonduras"], "maxItems": 2}
)
items = client.dataset(run["defaultDatasetId"]).list_items().items
print(items)

Use with Apify MCP

Add the Actor to Claude Code:

claude mcp add --transport http apify \
"https://mcp.apify.com?tools=automation-lab/snapchat-public-profile-metadata"

Claude Desktop

Add this server to the mcpServers object in Claude Desktop's configuration:

{
"mcpServers": {
"apify": {
"url": "https://mcp.apify.com?tools=automation-lab/snapchat-public-profile-metadata"
}
}
}

Cursor

Open Settings → Tools & MCP → Add custom MCP and use the same HTTP URL:

https://mcp.apify.com?tools=automation-lab/snapchat-public-profile-metadata

VS Code

Add an HTTP MCP server named apify to your VS Code MCP configuration with the same Actor-specific URL.

Example prompts:

  • “Look up the public Snapchat profiles for nasa and shonduras and compare subscriber counts.”
  • “Fetch this list of Snapchat profile URLs and return username, display name, bio, website, and badge state.”
  • “Create a current Snapchat profile snapshot for these known creators and flag private or not-found results.”

MCP clients still need access to your Apify account and Actor run permissions.

Reliability, limits, and responsible use

  • Public profile fields depend on Snapchat's current logged-out page response.
  • The Actor does not bypass account privacy, authentication, age gates, or access controls.
  • It does not identify profile viewers or access private Snapchat content.
  • Images and Snapcodes are returned as source URLs; media files are not downloaded.
  • Related accounts are the summaries exposed on each source profile and are not recursively scraped.
  • A run accepts at most 1,000 unique lookups and processes five requests at a time.
  • Transient requests receive up to two bounded retries.
  • A source layout or field can change, disappear, or become unavailable by region.

For large recurring jobs, begin with a small sample and verify that the fields needed by your workflow are currently exposed.

Use the Actor only for lawful purposes and public data you are entitled to process. Follow Snapchat's terms, applicable privacy and data-protection law, and your organization's policies. Avoid sensitive profiling, harassment, spam, surveillance, or attempts to infer private information.

You are responsible for your inputs, retention period, downstream decisions, and compliance. Minimize collected fields, keep data only as long as necessary, secure exports, and honor applicable deletion or access requests.

Troubleshooting

Why did the Actor reject my URL?

Only HTTPS Snapchat profile URLs in /add/username or /@username format are accepted. Remove query-only, Discover, Spotlight, Story, download, or unrelated Snapchat URLs.

Why are many fields null?

The account may be private, absent, or may not expose those public fields. Check profileType first. A valid public account can also omit biography, website, category, timestamps, or images.

Why did the run fail?

The run fails for malformed input, no inputs, or when every requested profile request fails after retries. Check the run log for HTTP status or response-shape details, then test a known public username.

Why did the subscriber count change?

Subscriber counts are current source observations and can change naturally. The Actor does not smooth, estimate, or reconstruct historical counts.

FAQ

Do I need a Snapchat login or API key?

No Snapchat credential is required for the supported logged-out profile lookup. You need an Apify account to run the Actor.

Can it search for Snapchat users by topic, name, email, or phone?

No. Supply known Snapchat usernames or supported public profile URLs. The Actor does not implement topic search, contact discovery, or identity matching.

Does it scrape Stories or Spotlight posts?

No. It returns public flags indicating whether some content types are exposed, but it does not return Story or Spotlight media items.

Can I track profiles over time?

Yes. Schedule repeated runs and compare timestamped datasets externally. The Actor itself returns the current snapshot and does not keep a cross-run history table.

No. Related-account summaries are included in the parent profile lookup record and have no separate charge event.

Can I use both usernames and URLs?

Yes. The Actor combines both lists, normalizes usernames, removes duplicates, and then applies maxItems.

Does not_found always mean the account never existed?

No. It means no matching logged-out page was available during this lookup. Usernames can be changed, removed, restricted, or temporarily unavailable.

Use this Actor when profile metadata is the primary record. Use the related Actors only when the workflow requires public Story or Spotlight media.