FormFav LogoFormFav
    Free tier — no contracts, no sales calls

    Horse Racing Data Feed

    A horse racing data feed delivered as a RESTful JSON API. Runner form and career stats on the free tier, results and margins on Pro, live bookmaker prices and real-time results on Premium — across thoroughbred, harness and greyhound racing in 24+ countries.

    Sign in with Google, GitHub or email, via Replit. No credit card needed.

    What's in the Horse Racing Data Feed

    Pre-race form, post-race results and in-market prices, all as structured JSON from one API key.

    Free

    Runner Form & Career Stats

    Every runner in every race: number, barrier, weight, jockey, trainer, form string, and career statistics broken down by track, distance and condition, with win and place strike rates.

    Free

    Meetings & Venues

    Discover what is running on any date, in any timezone, before you request a race. Track names resolve through fuzzy matching and aliases, so a slug you half-remember still lands.

    Pro

    Results & Margins

    Finishing positions, margins and the official starting price for completed races — one race, or an entire meeting in a single call. Scratchings stay in the response, flagged rather than dropped.

    Premium

    Live Bookmaker Prices

    Current win and place prices per runner, one entry per bookmaker and market type, with opening, high and low prices and movement history. Built to be polled through the last minutes before the jump.

    Pro

    Predictions & Analytics

    ML win and place probabilities, speed maps, class profiles, form badges, track bias, and jockey and trainer statistics — derived from the same feed, so nothing needs a second integration.

    Free

    24+ Countries, 3 Codes

    Thoroughbred, harness and greyhound racing across 24+ countries, through one set of parameters and one API key.

    How Often the Feed Updates

    Pre-race form is a daily feed on every tier. What changes with the tier is how quickly race-day events reach you — scratchings, results, and the prices bookmakers are quoting.

    DataFree & ProPremium & Enterprise
    Race form and career statsDaily, ahead of race dayDaily, ahead of race day
    Scratchings, track condition, weatherWith the batch pipelineLive, as they are declared
    Results and marginsEvery 2–3 hours (Pro)As races settle, with interim and correct-weight stages
    Official starting priceAfter the race settles (Pro)After the race settles
    Live win and place pricesNot includedContinuous, 5-second edge cache

    Every race in the results feed carries a resultStatus — final, interim, pending or abandoned — so a race that has not been run is distinguishable from one that has run but is not ingested yet. An unresulted race returns 200 with pending, never a 404. Live price responses are cached for 5 seconds at the edge, so polling faster than that returns the same body; the prices reference covers cadence and staleness in detail, and the horse racing odds API page shows what each quote carries.

    Feed Endpoints

    Every endpoint takes the same date, track and race parameters, authenticated with an X-API-Key header. Call meetings first to discover what is running, then pull form, results or prices for any race it lists.

    EndpointReturnsTier
    GET /v1/form/meetingsMeetings and race numbers running on a dateFree
    GET /v1/formRunner form, career stats and race conditions for one raceFree
    GET /v1/form/venuesTrack lookup and slug resolutionFree
    GET /v1/resultsFinishing positions, margins and starting price — or a whole meeting via /v1/results/meetingPro
    GET /v1/predictionsWin and place probabilities and model ratingsPro
    GET /v1/stats/…Jockey, trainer, runner and track bias statisticsPro
    GET /v1/pricesLive win and place prices per bookmaker, with fluctuationsPremium

    One Request, Full Race Form

    The feed is pull-based: pass a date, track, and race number and get structured form data for every runner back as JSON. Swap the path for /v1/results or /v1/prices with the same query string to close the loop after the race or watch the market before it.

    • Race details — name, class, distance, prize money, start time with timezone
    • Track condition, weather, and pace scenario
    • Runner details — number, barrier, weight, age, jockey, trainer, claim
    • Form strings and last-starts history
    • Career stats with strike rates by track, distance, and condition
    • Finishing positions, margins and official starting price (Pro)
    • Jockey, trainer and track bias statistics (Pro)
    • ML win/place predictions, speed maps and class profiles (Pro)
    • Live bookmaker win and place prices with movement history (Premium)
    GET /v1/form?date=2026-07-18&track=flemington&race=7
    {
      "date": "2026-07-18",
      "track": "Flemington",
      "raceNumber": 7,
      "raceName": "Lexus Handicap",
      "distance": "2000m",
      "condition": "Good 4",
      "numberOfRunners": 12,
      "runners": [
        {
          "number": 1,
          "name": "Star Runner",
          "jockey": "J. McDonald",
          "trainer": "C. Waller",
          "weight": 58.5,
          "barrier": 5,
          "form": "1121x32141",
          "stats": {
            "overall": {
              "starts": 20,
              "wins": 8,
              "winPercent": 0.40
            }
          }
        }
      ]
    }
    GET /v1/results?date=2026-07-18&track=flemington&race=7
    GET /v1/prices?date=2026-07-18&track=flemington&race=7

    Feed Coverage

    Race form and results cover the same meetings, and live prices follow the bookmakers. How much each market carries varies, and coverage keeps growing as sources are added.

    DataMarketsRacing codes
    Race form24+ countriesThoroughbred, harness, greyhound
    ResultsEvery meeting with race formThoroughbred, harness, greyhound
    Live pricesEvery race the covered bookmakers are pricingQuoted per bookmaker, fixed and tote markets

    Results have their own page — the racing results API — covering how positions, margins and stages behave.

    How FormFav Compares to Traditional Racing Data Feeds

    On-demand, not batch

    Traditional racing data feeds push scheduled file drops you have to parse, store, and reconcile. FormFav is a pull-based feed: one HTTPS request returns the exact race you asked for, already structured. There is nothing to ingest and no directory to watch.

    Form, results and prices behind one set of parameters

    Most providers sell pre-race form, results and odds as separate products with separate identifiers. Here the date, track and race number you use for form are the same ones you use for results and live prices, so a race you fetched form for can be settled and priced with the identical query string.

    Free tier, instant access

    Most racing data feed providers gate everything behind sales calls and contracts. FormFav's free tier gives you 1,000 requests a day with career stats included — sign up and your key works immediately. Pro adds results and analytics with a 7-day trial, and Premium adds live prices and real-time results, all self-serve.

    Built for developers and AI agents

    An OpenAPI spec, a hosted MCP server, and a reference CLI mean the same feed powers your app backend, your scripts, and your AI assistant without extra integration work. ChatGPT, Claude, Cursor and Claude Code can query it as native tools.

    Independent form analysis, not an official feed

    FormFav provides independent form analysis and derived statistics. It is not an official race fields feed. If you are a licensed wagering operator, you remain responsible for any race fields approvals and for sourcing official racing materials through an authorised distributor where your operations require it.

    Using an AI assistant rather than writing code? The AI agents guide connects the same feed to Claude, GPT and Gemini through the hosted MCP server.

    Horse Racing Data Feed FAQ

    Start Pulling the Feed Today

    Free tier includes race form, meetings, and career stats — no credit card required. Pro adds results, predictions, jockey and trainer stats and track bias with a 7-day free trial. Premium adds live bookmaker prices and real-time results.