Instagram Account Age Checker avatar

Instagram Account Age Checker

Pricing

from $15.00 / 1,000 account age estimateds

Go to Apify Store
Instagram Account Age Checker

Instagram Account Age Checker

Estimate Instagram account age from usernames or profile URLs. Returns estimated created date, age in days/years, user ID, and confidence. Use for bot screening and influencer vetting. Not for scraping posts or emails. $0.015 per estimated account.

Pricing

from $15.00 / 1,000 account age estimateds

Rating

0.0

(0)

Developer

Khadin Akbar

Khadin Akbar

Maintained by Community

Actor stats

0

Bookmarked

1

Total users

0

Monthly active users

a day ago

Last modified

Share

Turn Instagram usernames or profile URLs into one age-estimate record per account for brand-safety reviewers, creator-vetting teams, and outreach agents. Each row includes userId, estimatedCreatedYear, estimatedAccountAgeDays, estimateConfidence, and optional public profile context. No Instagram login or cookies.

The estimate interpolates the numeric user ID assigned at signup — the same public signal other age checkers use — and treats Instagram's is_joined_recently flag as a high-confidence "joined in about the last two weeks" marker. Typical resolution is month-level; use year and month as the decision fields.

Best fit for this Actor

  • Screen community members or marketplace sellers and keep accounts whose estimated join year is older than your threshold.
  • Vet influencer and creator lists before outreach.
  • Enrich a handle list with userId, estimated join year, and public follower counts.

For bios, posts, or reels, continue with Instagram Profile Scraper or Instagram Posts Scraper after you have the handles.

Practical scenario

A brand-safety analyst pastes natgeo, nike, and a new handle. The run returns one row per account: natgeo maps to user ID 787132 and an estimated late-2010 join window; a missing handle comes back as VALID_EMPTY with no age-estimated charge. The analyst keeps accounts older than one year and routes the rest to manual review.

Quick start input

{
"usernames": ["natgeo"],
"maxItems": 10,
"includeProfileContext": true,
"providerOrder": "scrapecreators-first"
}

usernames accepts bare handles, @handles, or instagram.com/{user} profile URLs. One unique handle produces one dataset row.

Input reference

FieldTypeWhat it controls
usernamesarrayRequired handles or profile URLs. Example: natgeo. Max 200 unique values. Post and reel URLs belong in the posts Actor.
maxItemsintegerCap on unique accounts processed. Default 50, max 200.
includeProfileContextbooleanInclude name, private/verified flags, and counts. Default true.
providerOrderenumscrapecreators-first (default), sociavault-first, vendor-only, or native-first.

What data you receive

One dataset item is one Instagram account.

{
"username": "natgeo",
"userId": "787132",
"profileUrl": "https://www.instagram.com/natgeo/",
"estimatedCreatedAt": "2010-11-15T00:00:00.000Z",
"estimatedCreatedYear": 2010,
"estimatedCreatedMonth": 11,
"estimatedAccountAgeDays": 5755,
"estimatedAccountAgeYears": 15.8,
"estimateConfidence": "high",
"evidenceType": "user_id_interpolation",
"outcome": "OK",
"provider": "scrapecreators",
"scrapedAt": "2026-08-18T12:00:00.000Z"
}
FieldMeaning
estimatedCreatedAtInterpolated signup instant (ISO 8601). Typical accuracy is about a month.
estimateConfidencehigh, medium, low, or none.
outcomeOK billed; VALID_EMPTY when the username is missing (no age charge).

OUTPUT and RUN_SUMMARY in the default key-value store hold outcome, itemsPushed, and chargedEventCounts.

Use through the API

curl -X POST "https://api.apify.com/v2/acts/khadinakbar~instagram-account-age-checker/runs" \
-H "Authorization: Bearer $APIFY_TOKEN" \
-H "Content-Type: application/json" \
-d '{"usernames":["natgeo"]}'

Download rows as JSON, CSV, Excel, or HTML from the Dataset tab.

Use with AI agents through Apify MCP

Estimate Instagram account age for natgeo and nasa. Return username, estimatedCreatedYear, estimatedAccountAgeDays, confidence, outcome, and provider.

Connect via https://mcp.apify.com. Read OUTPUT.outcome and itemsPushed to interpret empty datasets.

Connect the workflow

Pricing

Pay per event plus platform usage. Confirm current event prices on the live Pricing tab; that tab is the source of truth if this page ever lags.

  • apify-actor-start: $0.00005 per run
  • age-estimated: $0.015 per OK row

A one-account check is about $0.015 in result events plus a few seconds of Apify platform usage. VALID_EMPTY rows have no age-estimated charge. Provider credits are paid by the Actor owner.

How it works

  1. Normalize and deduplicate usernames.
  2. Fetch public profile JSON from ScrapeCreators, then SociaVault, then native web_profile_info if vendors miss.
  3. Estimate age from the numeric userId (and is_joined_recently when present).
  4. Charge age-estimated only after a usable estimate, then write the row.

Private accounts still return an estimate when the public user ID is visible.

Best results

  • Pass profile URLs or handles; keep post and reel URLs for the posts Actor.
  • Use estimatedCreatedYear / estimatedCreatedMonth as the decision fields. The ISO timestamp is interpolated.
  • Cookies stay optional. The default path is cookieless providers.
  • A typo username finishes SUCCEEDED with a VALID_EMPTY row and no age-estimated charge.

Builder's note

I found that Instagram's public profile JSON already includes the numeric user ID and sometimes is_joined_recently, and those two fields are enough to estimate age. Earliest-visible-post timestamps only describe the latest grid, so established accounts looked recently active in my testing. ScrapeCreators and SociaVault both return the user ID without cookies, which keeps this Actor HTTP-only and fast.

Use this Actor on public Instagram data you are authorized to process, follow applicable law and Instagram's terms, and keep the output in your own compliance workflow. This Actor is independent of Meta.

Issues and feature requests: use the Actor Issues tab on Apify.