LoLalytics APIlolalytics.com ↗
Access LoLalytics champion tier lists, win rates, ban rates, pick rates, and top-player leaderboards for League of Legends via a structured API.
What is the LoLalytics API?
The LoLalytics API exposes 4 endpoints covering League of Legends champion meta statistics and player leaderboards. The get_champion_meta endpoint returns tier grades, win rates, pick rates, and ban rates for every champion, filterable by lane, rank tier, patch, queue type, and region. The get_champion_leaderboard endpoint surfaces up to 50 top-performing players per champion with per-player win rate, games played, ranked tier, and lane distribution.
curl -X GET 'https://api.parse.bot/scraper/bda1fe1e-fb28-4f5f-85dc-49b48e6b1fc4/get_champion_meta?lane=top&tier=emerald_plus&patch=16.12&queue=420®ion=all' \ -H 'X-API-Key: $PARSE_API_KEY'
Retrieve tier list meta data for all champions, including win rate, pick rate, ban rate, rank, and tier grade. Supports filtering by lane, rank tier, and region. Returns all champions across all lanes when lane is set to 'all'. Each champion entry includes their tier grade (1=S+, 2=S, etc.), rank within their lane, and top player statistics.
| Param | Type | Description |
|---|---|---|
| lane | string | Filter by lane. |
| tier | string | Rank tier filter for data aggregation. |
| patch | string | Game patch version (e.g. '16.12', '16.11'). Omitting uses recent aggregate data. |
| queue | string | Queue type ID. 420 = Ranked Solo/Duo, 440 = Ranked Flex. |
| region | string | Server region filter. |
{
"type": "object",
"fields": {
"patch": "string",
"champions": "array of champion meta objects",
"total_analysed": "integer",
"average_win_rate": "number"
},
"sample": {
"data": {
"patch": "16.12",
"champions": [
{
"lane": "bottom",
"rank": 1,
"games": 355359,
"top_elo": 850,
"ban_rate": 26.22,
"lane_pct": 73.2,
"top_rank": 1,
"win_rate": 56.41,
"pick_rate": 19.21,
"tier_grade": 1,
"champion_id": 235,
"default_lane": "bottom",
"top_win_rate": "58.43"
}
],
"total_analysed": 18500080,
"average_win_rate": 51.76
},
"status": "success"
}
}About the LoLalytics API
Champion Meta and Tier Data
The get_champion_meta endpoint returns a full champion roster snapshot for a given combination of lane, tier, patch, queue, and region. Each champion object in the champions array carries a tier grade (1 = S+, scaling down through lower tiers), win rate, pick rate, ban rate, and rank position. The response also includes total_analysed (total games counted) and average_win_rate for the selected filter set. Setting lane to 'all' returns every champion across every lane in one call.
Bulk Stats with Matchups and Items
get_champions_stats returns current-patch tier list stats for every champion or a caller-supplied comma-separated list. When include_matchups is true, each champion record gains a matchups object with per-opponent win rate and deltas. When include_items is true, each record gains an items object with per-item win rate, pick rate, games, and purchase data. The champions parameter accepts any number of names for the full roster but is limited to 10 when either enrichment flag is set. The not_found array lists any names that didn't match a known champion, and detail_errors reports build pages that could not be read.
Paginated Full-Roster Stats
get_champions_stats_full retrieves the full roster with both matchup and item data included by default, using offset-based pagination. The limit parameter is clamped to 30 champions per page. The response includes has_more, next_offset, total_champions, and total_analysed, so callers can walk the entire roster page by page. Both get_champions_stats and get_champions_stats_full read the current patch from the site at call time, so no patch parameter is required.
Champion Leaderboards
get_champion_leaderboard requires a champion slug (lowercase, no spaces or apostrophes — e.g., 'leesin', 'aurelionsol') and returns up to 50 entries. Each player entry includes summoner name, region, win rate, total games on that champion, solo queue ranked tier, and lane distribution. The endpoint supports the same lane, tier, patch, queue, and region filters as the meta endpoint.
The LoLalytics API is a managed, monitored endpoint for lolalytics.com — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when lolalytics.com changes and a check fails, the API is automatically queued for repair and re-verified. It is built to keep working as the site underneath it changes.
This isn't an official lolalytics.com API — it's an independent, maintained REST wrapper over public data. Where the source has no official API (or only a limited one), Parse gives you a stable contract over a source that never promised one, and keeps it current. Need a new endpoint or field? You can revise it yourself in plain English and the agent rebuilds it against the live site in minutes — contributing the change back to the shared API is free.
Will this API break when the source site changes?+
Is this an official API from the source site?+
Can I fix or extend this API myself if I need a new endpoint or field?+
What happens if I call an endpoint that has an issue?+
- Build a champion tier list dashboard that updates each patch using
get_champion_metawin rate and tier grade fields. - Track ban rate trends across patches and rank tiers by querying
get_champion_metawith differenttierandpatchcombinations. - Identify the highest win-rate item builds for a champion by calling
get_champions_statswithinclude_items=true. - Analyze favorable and unfavorable matchups for a given champion using the
matchupsobject fromget_champions_stats. - Find the top 50 ranked players on a specific champion in a target region via
get_champion_leaderboard. - Populate a champion-select tool with live pick rate and ban rate data filtered to a specific queue type (Ranked Solo/Duo vs. Flex).
- Walk the full champion roster with item and matchup data for offline analysis using
get_champions_stats_fullpagination.
| Tier | Price | Credits/month | Rate limit |
|---|---|---|---|
| Free | $0/mo | 200 | 5 req/min |
| Hobby | $30/mo | 1,000 | 20 req/min |
| Developer | $100/mo | 5,000 | 100 req/min |
| Team | $300/mo | 20,000 | 300 req/min |
| Company | $1,000/mo | 100,000 | 500 req/min |
Each endpoint has a fixed posted price per successful call — most fall between 1 and 10 credits — shown on this API's page before you run it. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.
Does LoLalytics have an official developer API?+
What does the tier grade field in `get_champion_meta` represent?+
tier grade is a numeric value where 1 = S+, with higher numbers indicating lower tier grades. It reflects LoLalytics' rating for a champion's current meta performance given the selected lane, rank tier, and patch filters.Is there a limit on how many champions can be requested in `get_champions_stats` when matchups or items are included?+
include_matchups or include_items is set to true, the champions parameter is capped at 10 champion slugs per call. For the full roster with both enrichment types, use get_champions_stats_full, which paginates through all champions with a page size clamped to 30.Does the API expose individual match history, rune recommendations, or summoner spell statistics?+
How fresh is the data, and can I request data for older patches?+
get_champion_meta and get_champion_leaderboard accept an explicit patch parameter (e.g., '16.11'). When patch is omitted, both endpoints return recent aggregate data. get_champions_stats and get_champions_stats_full always use the current patch read from the site at call time and do not accept a patch input.