AltSportsData

Compare Leagues

Compare two leagues side-by-side across multiple dimensions

Compare Leagues

Compare two leagues side-by-side across key metrics, valuation, readiness, and commercial factors.

Endpoint

GET /v1/leagues/{league_id}/compare/{other_id}

Authentication

Required. Use Bearer token or X-API-Key header.

Path Parameters

ParameterTypeRequiredDescription
league_idstringYesFirst league identifier (e.g., "formula-1")
other_idstringYesSecond league identifier (e.g., "nascar")

Example Request

import { AltSportsData } from 'altsportsdata';

const client = new AltSportsData({ apiKey: 'YOUR_API_KEY' });

const comparison = await client.leagues.compare('formula-1', 'nascar');

console.log(comparison.data);
from altsportsdata import AltSportsData

client = AltSportsData(api_key='YOUR_API_KEY')

comparison = client.leagues.compare('formula-1', 'nascar')

print(comparison.data)
curl -X GET "https://api.altsportsdata.com/v1/leagues/formula-1/compare/nascar" \
  -H "Authorization: Bearer YOUR_API_KEY"
const response = await fetch("https://api.altsportsdata.com/v1/leagues/formula-1/compare/nascar", {
  headers: {
    "Authorization": "Bearer YOUR_API_KEY"
  }
});

const comparison = await response.json();
console.log(comparison.data);
require 'net/http'
require 'json'

uri = URI('https://api.altsportsdata.com/v1/leagues/formula-1/compare/nascar')

http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = true

request = Net::HTTP::Get.new(uri)
request['Authorization'] = 'Bearer YOUR_API_KEY'

response = http.request(request)
data = JSON.parse(response.body)
<?php
$url = 'https://api.altsportsdata.com/v1/leagues/formula-1/compare/nascar';

$ch = curl_init($url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, [
    'Authorization: Bearer YOUR_API_KEY'
]);

$response = curl_exec($ch);
$data = json_decode($response, true);
curl_close($ch);
?>
using System;
using System.Net.Http;
using System.Threading.Tasks;

var client = new HttpClient();
client.DefaultRequestHeaders.Add("Authorization", "Bearer YOUR_API_KEY");

var url = "https://api.altsportsdata.com/v1/leagues/formula-1/compare/nascar";
var response = await client.GetStringAsync(url);
Console.WriteLine(response);
package main

import (
    "fmt"
    "io"
    "net/http"
)

func main() {
    client := &http.Client{}
    url := "https://api.altsportsdata.com/v1/leagues/formula-1/compare/nascar"
    
    req, _ := http.NewRequest("GET", url, nil)
    req.Header.Set("Authorization", "Bearer YOUR_API_KEY")

    resp, _ := client.Do(req)
    defer resp.Body.Close()
    
    body, _ := io.ReadAll(resp.Body)
    fmt.Println(string(body))
}
import java.net.HttpURLConnection;
import java.net.URL;
import java.io.BufferedReader;
import java.io.InputStreamReader;

public class CompareLeagues {
    public static void main(String[] args) throws Exception {
        String urlString = "https://api.altsportsdata.com/v1/leagues/formula-1/compare/nascar";
        URL url = new URL(urlString);
        
        HttpURLConnection conn = (HttpURLConnection) url.openConnection();
        conn.setRequestMethod("GET");
        conn.setRequestProperty("Authorization", "Bearer YOUR_API_KEY");

        BufferedReader in = new BufferedReader(
            new InputStreamReader(conn.getInputStream())
        );
        
        String line;
        StringBuilder response = new StringBuilder();
        while ((line = in.readLine()) != null) {
            response.append(line);
        }
        in.close();
        
        System.out.println(response.toString());
    }
}

Example Response

{
  "data": {
    "league_a": {
      "id": "formula-1",
      "name": "Formula 1 World Championship",
      "tier": "T1",
      "tier_score": 945,
      "readiness_score": 932,
      "valuation_acv": 250000,
      "events_per_season": 23,
      "global_reach": "worldwide",
      "avg_viewership": 87000000
    },
    "league_b": {
      "id": "nascar",
      "name": "NASCAR Cup Series",
      "tier": "T1",
      "tier_score": 887,
      "readiness_score": 895,
      "valuation_acv": 180000,
      "events_per_season": 36,
      "global_reach": "primarily_north_america",
      "avg_viewership": 4200000
    },
    "comparison": {
      "tier_difference": 0,
      "score_difference": 58,
      "acv_difference": 70000,
      "common_sport_bucket": "motorsport",
      "similarity_score": 0.78,
      "key_differences": [
        "Formula 1 has significantly higher global viewership",
        "NASCAR has more events per season",
        "Formula 1 commands higher commercial value",
        "Both are T1 elite motorsport properties"
      ],
      "common_strengths": [
        "Excellent data infrastructure",
        "Strong commercial viability",
        "High fan engagement",
        "Established betting markets"
      ]
    },
    "recommendation": "Both leagues represent premium motorsport properties with strong commercial appeal. Formula 1 offers higher global reach and valuation, while NASCAR provides more frequent event opportunities."
  },
  "meta": {
    "total": 1,
    "page": 1,
    "limit": 1,
    "has_more": false,
    "api_version": "v1",
    "timestamp": "2026-03-07T06:38:00Z"
  }
}

Response Fields

FieldTypeDescription
league_aobjectFirst league summary
league_bobjectSecond league summary
league_*.idstringLeague identifier
league_*.namestringLeague name
league_*.tierstringTier classification
league_*.tier_scoreintegerTier score (0-1000)
league_*.readiness_scoreintegerReadiness score (0-1000)
league_*.valuation_acvintegerAnnual contract value (USD)
league_*.events_per_seasonintegerAverage events per season
league_*.global_reachstringGeographic reach
league_*.avg_viewershipintegerAverage viewership per event
comparison.tier_differenceintegerDifference in tier levels
comparison.score_differenceintegerDifference in tier scores
comparison.acv_differenceintegerDifference in valuation (USD)
comparison.common_sport_bucketstringShared sport category
comparison.similarity_scorenumberSimilarity coefficient (0-1)
comparison.key_differencesarrayKey differentiating factors
comparison.common_strengthsarrayShared strengths
recommendationstringComparative recommendation

On this page