College Athlete Recruiting Profiles Scraper — On3 & Rivals avatar

College Athlete Recruiting Profiles Scraper — On3 & Rivals

Pricing

Pay per event

Go to Apify Store
College Athlete Recruiting Profiles Scraper — On3 & Rivals

College Athlete Recruiting Profiles Scraper — On3 & Rivals

Scrape 80,000+ college football and multi-sport recruiting profiles from On3.com (the platform that acquired Rivals in 2023). Extracts star ratings, national/position/state rankings, commitment data, transfer portal status, physical measurements, and social handles across class years 2016-2034.

Pricing

Pay per event

Rating

0.0

(0)

Developer

BowTiedRaccoon

BowTiedRaccoon

Maintained by Community

Actor stats

1

Bookmarked

8

Total users

2

Monthly active users

16 hours

Issues response

3 days ago

Last modified

Share

Pull structured recruiting profiles for 80,000+ college football athletes — and thousands more across basketball, baseball, softball, and volleyball — directly from On3.com, the platform that absorbed Rivals.com in 2023. All legacy Rivals profiles now live at on3.com/rivals/* and are fully covered.

Data is extracted from On3's sitemap-driven player index, covering recruiting classes from 2016 through 2034. Each run pages through the full athlete catalog for the selected sport and class year, returning one structured record per athlete.

What You Get

Each record contains the following fields:

FieldDescription
athlete_idOn3 unique athlete identifier
nameAthlete full name
sportSport (Football, Basketball, etc.)
position / position_fullPosition abbreviation and full name
class_yearRecruiting class year (HS graduation year)
class_rankAcademic class (Freshman, Sophomore, Junior, Senior)
height / weightPhysical measurements
ageCurrent age
high_school / high_school_fullHigh school name and mascot
hs_city / hs_stateHometown
collegeCommitted or current college (null if uncommitted)
commitment_dateISO-format commitment date
transfer_statusTransfer portal status (None, Transfer, ExpectedToTransfer, WithdrawnTransfer)
star_ratingOn3 star rating (2–5 stars; null if unranked)
ratingNumeric score (0–100 scale)
ranking_nationalNational rank among all prospects in class
ranking_positionPosition rank in class
ranking_stateState rank in class
five_star_plusWhether rated as an elite five-star-plus prospect
nil_statusNIL valuation status flag (Active, Private, or Pending)
nil_valuationNIL market value in USD — present only for athletes whose valuations are publicly listed on On3
nil_rankNIL rank among all athletes (when public)
twitter_handle / instagram_handle / tiktok_handleSocial handles (when publicly listed)
organization_levelCurrent level (HighSchool, JuniorCollege, College)
athlete_verifiedWhether On3 has verified the profile
profile_urlDirect URL to athlete's On3 profile

How to Use

Quick Start

  1. Open the actor on Apify and click Try for free
  2. Select a sport (default: football)
  3. Optionally set a classYear to narrow to one recruiting class
  4. Set maxItems to limit output size for testing (set to 0 for a full run)
  5. Click Start and collect results from the Dataset tab

Input Parameters

ParameterTypeDefaultDescription
sportstringfootballSport to scrape. Options: football, basketball, womens-basketball, baseball, softball, volleyball
classYearinteger0Recruiting class year filter. Set to 0 to collect all available years.
maxItemsinteger0Cap on number of profiles returned. 0 = no limit.

Example API Call

{
"sport": "football",
"classYear": 2026,
"maxItems": 500
}

Sample Output

{
"athlete_id": 156049,
"platform": "on3",
"slug": "kody-strayhorn-156049",
"profile_url": "https://www.on3.com/rivals/kody-strayhorn-156049/",
"name": "Kody Strayhorn",
"sport": "Football",
"position": "IOL",
"position_full": "Interior Offensive Lineman",
"class_year": 2028,
"class_rank": "Senior",
"height": "6-3",
"weight": 295,
"high_school": "Lebanon",
"hs_city": null,
"hs_state": "MI",
"college": null,
"commitment_date": null,
"transfer_status": "None",
"star_rating": 3,
"rating": 87.4,
"ranking_national": 524,
"ranking_position": 30,
"ranking_state": 76,
"five_star_plus": false,
"nil_status": "Private",
"nil_valuation": null,
"nil_rank": null,
"twitter_handle": "kodystrayhorn",
"instagram_handle": null,
"tiktok_handle": null,
"organization_level": "HighSchool",
"athlete_verified": true
}

Data Scale

SportApproximate Coverage
Football80,000+ profiles, class years 2016–2034
Basketball (Men's)15,000+ profiles
Basketball (Women's)Available
Baseball / Softball / VolleyballAvailable

On3's player sitemap updates daily. A full football run with no filters will pull the complete catalog.

Use Cases

  • NIL agencies and sports agents — Identify ranked recruits by position, class year, and state; filter by star rating to surface top prospects
  • College recruiting services — Build and maintain a structured database of prospects with commitment and transfer portal status
  • Sports analytics platforms — Enrich player databases with recruiting pedigree, physical measurements, and position rankings
  • Sports journalism and research — Track transfer portal trends, commitment waves, and ranking changes across class years
  • Fantasy / DFS tools — Add recruiting-grade signal to player profiles for college sports products

Pricing

This actor uses pay-per-result pricing. You are charged per athlete profile returned. A full football catalog run (80,000+ records) is priced accordingly. Use maxItems to run a small sample before committing to a full pull.

Limitations

  • NIL valuations are mostly private. On3 only displays NIL market values for high-profile athletes who have opted in. Expect nil_valuation: null for the majority of profiles. The nil_status field (Active / Private / Pending) is always returned.
  • Rivals.com is fully absorbed. There is no separate Rivals scraper needed — all Rivals athlete profiles now live on On3 at on3.com/rivals/* and are included in this actor's output.
  • 247Sports is a separate platform (owned by CBS Sports) and is not covered by this actor.
  • Social handles depend on athlete privacy settings. Handles are only returned when publicly listed on the athlete's profile.
  • Historical class years (pre-2020) have thinner coverage — fewer profiles and less ranking data as On3 backfilled legacy Rivals records.