italki Tutor Profiles & Languages Scraper avatar

italki Tutor Profiles & Languages Scraper

Pricing

from $3.00 / 1,000 results

Go to Apify Store
italki Tutor Profiles & Languages Scraper

italki Tutor Profiles & Languages Scraper

Scrape italki teacher profiles with search professional teachers and community tutors by language, price, rating, and lesson count. Get name, country, teacher type, hourly rate, lessons count, students count, rating, reviews, bio, avatar, and more.

Pricing

from $3.00 / 1,000 results

Rating

5.0

(7)

Developer

Crawler Bros

Crawler Bros

Maintained by Community

Actor stats

7

Bookmarked

2

Total users

1

Monthly active users

3 days ago

Last modified

Share

Extract comprehensive teacher profiles from italki — the world's largest online language learning community with 10,000+ professional teachers and community tutors across 150+ languages. Search by language, teacher type, price, rating, and lesson count. Ideal for market research, education analytics, and competitive intelligence.

What You Get

Each teacher profile includes:

FieldDescription
teacherIdUnique italki teacher identifier
nameTeacher's display name
countryTeacher's country of origin
teacherType"Professional Teacher" or "Community Tutor"
languagesTaughtLanguages this teacher teaches
nativeLanguagesTeacher's native language(s)
hourlyRatePrice per hour in USD
currencyPricing currency
lessonsCountTotal lessons completed on italki
studentsCountTotal number of students
ratingAverage student rating (0–5)
reviewCountTotal student reviews
bioTeacher's introduction/description
profileUrlDirect link to teacher's italki profile
avatarUrlProfile photo URL
videoUrlIntroduction video URL
hasGroupClassesWhether the teacher offers group classes
recordTypeAlways "teacher"
scrapedAtISO 8601 timestamp of extraction

Teacher Types

italki has two types of teachers:

  • Professional Teacher — Certified language teachers with formal teaching credentials and structured lesson plans
  • Community Tutor — Native or fluent speakers who offer informal conversation practice at lower rates

Modes

searchTeachers (default)

Search for teachers by language with optional filters. Returns results sorted by your chosen criteria.

Example input:

{
"mode": "searchTeachers",
"language": "japanese",
"teacherType": "professional_teacher",
"minRating": 4.5,
"maxItems": 50
}

byLanguage

Retrieve all available teachers for a specific language, paginating through the complete listing.

Example input:

{
"mode": "byLanguage",
"language": "korean",
"maxItems": 200
}

getTeacher

Fetch full profiles for specific teachers by their italki profile URL or numeric ID.

Example input:

{
"mode": "getTeacher",
"startUrls": [
"https://www.italki.com/en/teacher/123456",
"https://www.italki.com/en/teacher/654321"
]
}

Input Reference

FieldTypeDefaultDescription
modeselectsearchTeachersOperation mode
languageselectjapaneseLanguage to search teachers for
startUrlsarrayTeacher profile URLs (mode=getTeacher)
teacherIdsarrayNumeric teacher IDs (mode=getTeacher)
teacherTypeselectAll typesFilter by teacher type
sortByselectrecommendedrecommended / price_asc / price_desc / rating / lessons
minPricenumberMinimum hourly rate (USD)
maxPricenumberMaximum hourly rate (USD)
minRatingnumberMinimum average rating (0–5)
minLessonsintegerMinimum completed lessons count
useResidentialProxybooleantrueRequired — italki blocks datacenter IPs
maxItemsinteger20Maximum profiles to return (1–5000)

Supported Languages

English, Spanish, French, German, Japanese, Chinese (Mandarin), Korean, Italian, Portuguese, Russian, Arabic, Dutch, Polish, Turkish, Swedish, Norwegian, Hindi, Hebrew, Greek, Vietnamese, Thai, Indonesian, Malay, Filipino (Tagalog), Ukrainian, Romanian, Czech, Hungarian, Danish, Finnish, Persian (Farsi), Bengali, Urdu, Swahili, Catalan, and more.

Output Example

{
"teacherId": "123456",
"name": "Yuki Tanaka",
"country": "Japan",
"teacherType": "Professional Teacher",
"languagesTaught": ["Japanese"],
"nativeLanguages": ["Japanese"],
"hourlyRate": 20.0,
"currency": "USD",
"lessonsCount": 850,
"studentsCount": 120,
"rating": 4.8,
"reviewCount": 95,
"bio": "Native Japanese teacher with 5 years experience...",
"profileUrl": "https://www.italki.com/en/teacher/123456",
"avatarUrl": "https://static.italki.com/avatar/123456.jpg",
"hasGroupClasses": true,
"recordType": "teacher",
"scrapedAt": "2026-05-17T10:00:00+00:00"
}

Use Cases

  • Market Research — Compare teacher pricing, ratings, and specializations across languages
  • Competitive Analysis — Benchmark italki's teacher supply against other platforms
  • Education Analytics — Study teacher demographics, lesson counts, and student demand by language
  • Language Learning Research — Identify top-rated teachers and in-demand languages
  • Platform Intelligence — Track italki teacher growth and availability trends

About Residential Proxy

italki uses Cloudflare Bot Management (confirmed in a published Cloudflare case study). Datacenter IP addresses are blocked. Residential proxy is required for reliable scraping. The actor uses Apify's residential proxy network by default. Leave useResidentialProxy enabled for best results.

Performance

  • Processes 20 teachers per page via italki's internal API
  • Supports up to 5,000 teachers per run
  • Uses TLS fingerprint spoofing (curl_cffi) with automatic Playwright fallback
  • Session rotation for resilience against rate limiting
  • Retry logic on server errors (5xx) and rate limits (429)

FAQ

Q: Does this require an italki account? A: No. The actor uses italki's public teacher directory — no login or API key required.

Q: Why is residential proxy required? A: italki specifically uses Cloudflare Bot Management to block automated access from datacenter IP ranges. Residential proxies route traffic through real user IP addresses that bypass this protection.

Q: What's the difference between Professional Teacher and Community Tutor? A: Professional Teachers have formal teaching credentials and typically charge higher rates with structured lessons. Community Tutors are native/fluent speakers who offer informal conversational practice at lower cost.

Q: Can I scrape a specific language's full teacher list? A: Yes — use mode=byLanguage with a high maxItems value to paginate through the complete teacher listing for any language.

Q: How accurate is the data? A: Each run fetches live data directly from italki at execution time. Ratings, prices, and lesson counts reflect real-time platform data.

Q: How many teachers can I scrape per run? A: Up to 5,000 per run. For larger datasets, run multiple times with different filter criteria.

Q: Does italki offer group classes? A: Some teachers offer group classes in addition to 1-on-1 lessons. The hasGroupClasses field indicates this availability.