TikTok Creator Email Finder avatar

TikTok Creator Email Finder

Pricing

from $0.80 / 1,000 public emails

Go to Apify Store
TikTok Creator Email Finder

TikTok Creator Email Finder

Find public emails shown on TikTok profiles and, when enabled, linked public pages from usernames, @handles, profile URLs, or one keyword. Get profile links, bios, audience counts, social links, and source URLs in a structured dataset.

Pricing

from $0.80 / 1,000 public emails

Rating

0.0

(0)

Developer

Maxime Dupré

Maxime Dupré

Maintained by Community

Actor stats

0

Bookmarked

3

Total users

2

Monthly active users

3 days ago

Last modified

Share

📧 Find public TikTok emails with profile context

For outreach teams, creator marketers, and researchers, this Actor turns public TikTok profile targets into structured contact data. Enter usernames, @handles, profile URLs, or one keyword. The dataset can include public emails, profile details, source URLs, and clear contact outcomes, so you can review each contact with its profile context before outreach.

Use cases

📋 Review each profile and its public contact evidence

Each dataset row describes one processed TikTok profile. It includes the public username, display name, profile URL, biography, avatar, TikTok user ID, follower, following, like, and video counts, plus verification, privacy, seller, website, social-link, and read-time fields when the source supplies them. When an email is found, the row also keeps the address, domain, source URL, source type, basic domain health, and a primary email when more than one is found. No private or inferred email is created.

The outcome field shows email_found, no_public_email, or unavailable. An unavailable profile can include a reason in unavailableReason.

Choose TikTok profiles to scan submitted usernames, @handles, or profile URLs, or choose Keyword search to find candidate profiles from one keyword. For profile mode, add one target per line. Turn on linked-page scanning when you want more public contact and social information from pages linked by a profile. You can also filter by follower count, verified status, and email domain.

The Actor saves one result for each processed profile. Leave Maximum profiles to process empty to return all available results until the source is exhausted. Set a limit when you want fewer profiles and less data to review.

⚙️ Input

Input fields

FieldTypeWhat it does
targetstringRequired. Use profiles to scan profileTargets, or keyword to find candidate profiles from keyword. The other target field is ignored for the run.
profileTargetsarray of stringsPublic TikTok usernames, @handles, or profile URLs to scan, with one value per line. Used with target: profiles.
keywordstringOne keyword used to find candidate TikTok profiles. Used with target: keyword.
includeLinkedPagesbooleanWhen true, inspect public pages linked from each TikTok profile for more public contact and social information. Private or login-gated pages are skipped.
minimumFollowersintegerOnly return contacts from profiles with at least this many followers. Leave blank to allow any follower count.
verifiedOnlybooleanWhen true, return contacts only from profiles TikTok marks as verified. When false, include verified and unverified profiles.
emailDomainsarray of stringsExact public email domains to keep, such as brand.com. Leave blank to allow all public email domains.
maxItemsintegerActor Work Limit. Stop after this many profiles are processed. Leave blank to return all available results until the source is exhausted.

Example input

This JSON comes from a successful current-beta default-input run:

{
"target": "profiles",
"profileTargets": [
"@tiktok"
],
"includeLinkedPages": false,
"verifiedOnly": false
}

🧾 Output

The Output panel links to an Apify dataset. Every row has outcome and emails. Optional fields appear when public TikTok data supplies them. The tables below list the complete fields for each documented outcome shape. Nested paths use dots in the tables, while the examples keep their real objects and arrays.

Dataset link

FieldTypeWhat it does
datasetstringLink to the Apify dataset that contains the profile result rows.

Email found

FieldTypeWhat it does
outcomestringemail_found when one or more public emails are found.
usernamestringPublic TikTok username for the profile.
displayNamestringPublic display name shown on the profile.
profileUrlstringCanonical public TikTok profile URL.
biostringVisible biography text from the profile.
avatarUrlstringPublic profile avatar URL when available.
userIdstringPublic TikTok user identifier when available.
followerCountintegerPublic follower count shown for the profile.
followingCountintegerPublic number of accounts followed by the profile.
likeCountintegerPublic number of likes received by the profile.
videoCountintegerPublic number of videos on the profile.
isVerifiedbooleanWhether TikTok marks the profile as verified.
isPrivatebooleanWhether the profile is marked as private when this signal is available.
isSellerbooleanWhether the profile is marked as a seller when this signal is available.
websiteUrlstringPublic website linked from the profile when available.
emailsarray of objectsDistinct public email contacts found for the profile.
emails[].addressstringPublic email address.
emails[].domainstringDomain part of the public email address.
emails[].sourceUrlstringPublic page URL where the email was shown.
emails[].sourceTypestringSource kind: tiktok_bio or linked_page.
emails[].domainHealthstringBasic public domain check: healthy, unhealthy, or unknown. It does not confirm mailbox delivery.
primaryEmailstringPrimary public email selected when more than one email is found.
socialLinksarray of objectsOther public social links found on the profile or its linked public pages.
socialLinks[].platformstringSocial platform named by the link when available.
socialLinks[].urlstringPublic social profile URL.
profileReadAtstringTime when the public profile was read.
unavailableReasonstringReason used when the outcome is unavailable; normally absent here.

Genuine email-found row

This complete row came from a successful current-beta run with follower, verification, and email-domain filters.

{
"outcome": "email_found",
"emails": [
{
"address": "management@painted.co",
"domain": "painted.co",
"sourceUrl": "https://www.tiktok.com/@jamescharles",
"sourceType": "tiktok_bio",
"domainHealth": "healthy"
}
],
"socialLinks": [],
"username": "jamescharles",
"displayName": "James Charles",
"profileUrl": "https://www.tiktok.com/@jamescharles",
"bio": "✉️ management@painted.co\n🎨 @Painted @PaintedUK\n🎶 @James Charles Music \n\nNew Single Lonely out now!!",
"avatarUrl": "https://p16-common-sign.tiktokcdn-us.com/tos-useast5-avt-0068-tx/56ac3316193300d4e8295c752415cced~tplv-tiktokx-cropcenter:1080:1080.jpeg?dr=9640&refresh_token=772c61e9&x-expires=1787965200&x-signature=LE470W9jb0EXchU9tEokGGqJkvU%3D&t=4d5b0474&ps=13740610&shp=a5d48078&shcp=81f88b70&idc=useast5",
"userId": "190068318278651904",
"followerCount": 39300000,
"followingCount": 369,
"likeCount": 1600000000,
"videoCount": 1223,
"isVerified": true,
"isPrivate": false,
"isSeller": false,
"websiteUrl": "http://jamescharles.lnk.to/Lonely",
"primaryEmail": "management@painted.co",
"profileReadAt": "2026-08-27T01:09:40.298Z"
}

No public email

FieldTypeWhat it does
outcomestringno_public_email when no public email is found.
usernamestringPublic TikTok username for the profile.
displayNamestringPublic display name shown on the profile.
profileUrlstringCanonical public TikTok profile URL.
biostringVisible biography text from the profile.
avatarUrlstringPublic profile avatar URL when available.
userIdstringPublic TikTok user identifier when available.
followerCountintegerPublic follower count shown for the profile.
followingCountintegerPublic number of accounts followed by the profile.
likeCountintegerPublic number of likes received by the profile.
videoCountintegerPublic number of videos on the profile.
isVerifiedbooleanWhether TikTok marks the profile as verified.
isPrivatebooleanWhether the profile is marked as private when this signal is available.
isSellerbooleanWhether the profile is marked as a seller when this signal is available.
websiteUrlstringPublic website linked from the profile when available.
emailsarray of objectsEmpty when no public email is found.
emails[].addressstringPublic email address when an email object is present.
emails[].domainstringDomain part of a public email address.
emails[].sourceUrlstringPublic page URL where an email was shown.
emails[].sourceTypestringSource kind: tiktok_bio or linked_page.
emails[].domainHealthstringBasic public domain check: healthy, unhealthy, or unknown. It does not confirm mailbox delivery.
primaryEmailstringPrimary public email when one is found; normally absent here.
socialLinksarray of objectsOther public social links found on the profile or its linked public pages.
socialLinks[].platformstringSocial platform named by the link when available.
socialLinks[].urlstringPublic social profile URL.
profileReadAtstringTime when the public profile was read.
unavailableReasonstringReason used when the outcome is unavailable; normally absent here.

Genuine no-public-email row

This complete row came from a successful current-beta run with a direct profile target.

{
"outcome": "no_public_email",
"emails": [],
"socialLinks": [],
"username": "tiktok",
"displayName": "TikTok",
"profileUrl": "https://www.tiktok.com/@tiktok",
"bio": "One TikTok can make a big impact",
"avatarUrl": "https://p16-common-sign.tiktokcdn-us.com/tos-useast5-avt-0068-tx/ba67b11de451691939223e9d978e613a~tplv-tiktokx-cropcenter:1080:1080.jpeg?dr=9640&refresh_token=2e648c3b&x-expires=1787965200&x-signature=xnm9wobJVc9gXL39lKW9YzpCSvc%3D&t=4d5b0474&ps=13740610&shp=a5d48078&shcp=81f88b70&idc=useast8",
"userId": "107955",
"followerCount": 95400000,
"followingCount": 2,
"likeCount": 462900000,
"videoCount": 1495,
"isVerified": true,
"isPrivate": false,
"isSeller": false,
"websiteUrl": "https://linktr.ee/tiktok",
"profileReadAt": "2026-08-27T01:08:12.933Z"
}

Unavailable profile

FieldTypeWhat it does
outcomestringunavailable when a requested profile could not be fetched.
usernamestringPublic TikTok username when available.
displayNamestringPublic display name when available.
profileUrlstringCanonical public TikTok profile URL when available.
biostringVisible biography text when available.
avatarUrlstringPublic profile avatar URL when available.
userIdstringPublic TikTok user identifier when available.
followerCountintegerPublic follower count when available.
followingCountintegerPublic number of accounts followed when available.
likeCountintegerPublic number of likes received when available.
videoCountintegerPublic number of videos when available.
isVerifiedbooleanWhether TikTok marks the profile as verified when available.
isPrivatebooleanWhether the profile is marked as private when available.
isSellerbooleanWhether the profile is marked as a seller when available.
websiteUrlstringPublic website linked from the profile when available.
emailsarray of objectsEmpty when no public email is available.
emails[].addressstringPublic email address when an email object is present.
emails[].domainstringDomain part of a public email address.
emails[].sourceUrlstringPublic page URL where an email was shown.
emails[].sourceTypestringSource kind: tiktok_bio or linked_page.
emails[].domainHealthstringBasic public domain check: healthy, unhealthy, or unknown. It does not confirm mailbox delivery.
primaryEmailstringPrimary public email when one is found.
socialLinksarray of objectsOther public social links found on the profile or its linked public pages.
socialLinks[].platformstringSocial platform named by the link when available.
socialLinks[].urlstringPublic social profile URL.
profileReadAtstringTime when the public profile was read, when available.
unavailableReasonstringReason the requested public profile could not be fetched.

💳 Pricing

This Actor uses pay-per-event pricing. The primary public-tiktok-creator-lead event is charged for each saved public email lead. Its price is tiered by Apify plan. See the Pricing tab for current rates.

🔌 Integrations

After the run, read or export the dataset in Apify. You can also use the Apify API to start a run and read its dataset, then pass public profile and source URLs to your own review or outreach workflow. This Actor does not send outreach messages.

For a short guide to Apify workflows:

❓ FAQ

What counts as a public email?

Only an address shown on a public TikTok profile bio or a public linked page inspected by the run is returned. The Actor does not infer, generate, guess, or buy private addresses.

Why is the emails list empty?

Some profiles do not show a public email. The row uses outcome: no_public_email and keeps emails as an empty array. It does not invent an address.

Can I inspect a linked website?

Yes. Turn on includeLinkedPages. The Actor checks public pages linked from each profile for more contact and social information. Private or login-gated pages are skipped.

Can I limit results to certain profiles?

Yes. Use minimumFollowers, verifiedOnly, and emailDomains to restrict returned contacts. Use maxItems to stop processing after a chosen number of profiles.

What does domainHealth tell me?

It is a basic public check of the email domain. It can be healthy, unhealthy, or unknown, but it does not confirm mailbox delivery.

What happens when the same profile appears again?

The Actor saves the first eligible occurrence of a source profile and ignores later matches in the same discovery run. The saved row describes the first match.

Can I scan known usernames and profile URLs?

Yes. Choose profiles and add public usernames, @handles, or TikTok profile URLs to profileTargets, with one value per line.

Does it need TikTok credentials?

No. The Actor works with publicly accessible TikTok profiles and linked public pages without customer-provided source credentials.

Does it send outreach messages?

No. It collects structured public data. You decide how to review or use the saved contacts.

📝 Changelog

0.0: Initial release

🆘 Support

For issues, questions, or feature requests, file a ticket and I'll fix or implement it in less than 24h 🫡

Made with ❤️ by Maxime Dupré