Horse Racing APIForm, stats and racing data as JSON
Form, career stats, results and predictions for horse, harness and greyhound racing. Ask about them in ChatGPT or Claude, or pull them into your own app through the API and the horse racing data feed.
Ask your AI assistant
Add FormFav to ChatGPT or Claude, sign in, and ask about any race. No code and no API key.
Connect in 2 minutesBuild with the API
JSON over REST: runner form and career stats free, with results and predictions on Pro.
Sign in with Google, GitHub or email, via Replit. No credit card needed.
Ask About Any Race in Plain English
With FormFav connected, ChatGPT or Claude looks up the form, stats and, on Pro, class fit, speed maps and track bias, then answers your question.
get_race_card · Flemington, race 7Flemington Race 7 is a 1400m BM78 on a Good 4 track. Applying your rules:
| Runner | Weight | Barrier | First-up | |
|---|---|---|---|---|
| 1 | #4 Silent Anthem | 54.5kg | 3 | 3 wins from 4 |
| 2 | #2 Golden Reef | 56kg | 6 | 1 win from 3 |
| 3 | #6 Night Ledger | 57.5kg | 8 | 0 wins from 2 |
Penalised: #1 Top Hand (59kg, barrier 11) and #3 Bold Venture (59.5kg, barrier 14), both over 58kg and drawn wider than barrier 9.
This applies your rules to the form data; it isn't a FormFav prediction. Barriers are after scratchings.
Illustrative example with invented runners and figures, not real FormFav output. Real answers depend on the race, the data available and your plan.
How It Works
Two ways in: ask your AI assistant, or call the API from your own code
In ChatGPT or Claude
No codeAdd the Connector
Paste https://api.formfav.com/mcp as a custom connector in ChatGPT or Claude.
Sign In
Sign in to FormFav and approve access. The free plan is enough, and there's no key to copy.
Ask
Ask about any race in plain English and get answers from FormFav's form and stats.
In your own app
For developersGet API Key
Sign up for free and receive your API key instantly. No credit card required.
Make Request
Include your API key in the X-API-Key header and call our API with race parameters (date, track, race).
Display Form
Receive comprehensive JSON data and display beautiful form guides to your users.
Live API Demo
Try our API with real parameters and see the race form data instantly
Required Parameters
Dates are Australian Eastern time (Australia/Sydney), so overseas evening cards can appear on the next day. The API accepts any timezone parameter.
Optional Parameters
Ready to start?
Sign up free, grab your API key, and make your first request in under a minute.
Horse Racing API Features by Plan
Runner form and career stats are free, forever. For $10 a month, Pro turns form into a read on the race. Premium adds the market as it moves.
Free
Forever. No credit card.
- Runner form: barrier, weight, jockey, trainer and form string
- Career, track, distance and condition strike rates
- First-up and second-up records
- Meetings and venues across 24+ countries
- 1,000 requests a day
Pro
7-day free trial$10/month
The analysis layer: pace, class, form signals and predictions on every runner, plus the results to check them against.
Everything in Free · 20,000 requests a day · 5 API keys
Speed maps & pace
Each runner's running style and likely settling position, plus a pace rating for the race from slow to very fast. Pace decides which runners a race suits.
Speed map docs →Form badges
Two to five badges per runner, such as Track Specialist, each backed by the numbers ("5 wins from 12 starts") and marked for or against. Recalculated for today's track, distance, conditions and barrier.
Form badge docs →Class profiles
Current, peak and highest-winning class on one 0–100 scale for gallops, harness and greyhounds, with a trend, so a runner stepping up or dropping back stands out.
Class profile docs →Win & place predictions (beta)
Machine-learning win and place probabilities for every runner across thoroughbred, harness and greyhound racing, with win chances summing to 1 across the race. Set them against the market and see where you disagree.
Horse racing predictions API →Track bias & connections
Win rates by barrier at every venue, by distance band or a range you choose, plus jockey and trainer records at the track you're looking at.
Track bias docs →Results & margins
Finishing positions, margins and the official starting price, for one race or a whole meeting in a single call, so every selection can be checked against what happened.
Horse racing results API →Then $10 a month, or $100 a year. Cancel any time.
Premium
$50/month
Race day as it moves: live prices, results as races settle, and scratchings as they're declared.
Everything in Pro · 100,000 requests a day
Live bookmaker prices
Win and place prices for every runner, by bookmaker and market, with opening, high and low prices and recent moves. Small enough to poll every few seconds into the jump.
Horse racing odds API →Real-time results
Positions arrive as races settle instead of on the 2–3-hourly batch run, each tagged interim or correct weight so you know how final it is.
Result stages docs →Live scratchings & conditions
A scratching, track downgrade or weather change reaches race form as it's declared, so the runners you're pricing are the ones that jump.
Race form docs →Compare every plan or see what's in the horse racing data feed.
Built for Every Racing Platform
From tipping services to analytics tools, our horse racing API powers diverse applications across the racing industry
Tipping & Form Guide Services
Power tipping services and form guide products with horse racing form stats, derived ratings, and form history. Our racing API provides the analysis-ready data you need for pre-race research and selections.
Mobile Racing Apps
Create engaging mobile applications for iOS and Android with horse form stats, jockey performance tracking, and trainer records. Perfect for racing enthusiasts who want race form data on the go.
Racing Analytics & Predictions
Power data-driven prediction models and racing analytics platforms with comprehensive historical horse racing statistics. Build algorithms using jockey records, trainer performance, and horse form data.
Fantasy Racing Games
Develop fantasy racing platforms where users can create teams, compete in leagues, and make selections based on form data. Our API provides comprehensive stats for fantasy sports applications.
Racing Media & News Sites
Enhance racing news websites and media platforms with horse and greyhound profiles, form guides, and race form displays, then close the loop with race results — finishing positions and margins for every runner, a whole meeting at a time. Keep your audience engaged before and after the race.
Racing Community Platforms
Build social platforms for racing fans with form data insights, discussion forums powered by accurate stats, and community prediction contests. Engage users with reliable race form information.
API Documentation
Get started with FormFav API in minutes
Code Examples
// Fetch race form data with API key
const response = await fetch(
'https://api.formfav.com/v1/form?' +
new URLSearchParams({
date: '2025-01-15',
track: 'flemington',
race: '7',
race_code: 'gallops', // optional
country: 'au', // optional
timezone: 'Australia/Sydney' // optional
}),
{
headers: {
'X-API-Key': 'your_api_key_here'
}
}
);
const data = await response.json();
console.log(data);Response Format
{
"date": "2025-01-15",
"track": "Flemington",
"raceNumber": 7,
"raceName": "Lexus Handicap",
"distance": "2000m",
"condition": "Good 4",
"weather": "Fine",
"raceClass": "BM78",
"startTime": "2025-01-15T14:30:00",
"numberOfRunners": 12,
"runners": [
{
"number": 1,
"name": "Star Runner",
"jockey": "J. McDonald",
"trainer": "C. Waller",
"weight": 58.5,
"claim": 2.0,
"barrier": 5,
"age": 4,
"form": "1121x32141",
"last20Starts": "1121x321412231x4152",
"scratched": false,
"stats": {
"overall": {
"starts": 20, "wins": 8, "seconds": 4,
"thirds": 3, "places": 15,
"winPercent": 40.0, "placePercent": 75.0
},
"track": {
"starts": 5, "wins": 3, "places": 4,
"winPercent": 60.0, "placePercent": 80.0
},
"distance": {
"starts": 8, "wins": 4, "places": 6,
"winPercent": 50.0, "placePercent": 75.0
},
"trackDistance": {
"starts": 3, "wins": 2, "places": 3,
"winPercent": 66.7, "placePercent": 100.0
},
"condition": {
"starts": 6, "wins": 3, "places": 5,
"winPercent": 50.0, "placePercent": 83.3
},
"firstUp": {
"starts": 4, "wins": 2, "places": 3,
"winPercent": 50.0, "placePercent": 75.0
},
"secondUp": {
"starts": 4, "wins": 1, "places": 3,
"winPercent": 25.0, "placePercent": 75.0
}
}
}
// ... more runners
]
}Interactive API Explorer
Prefer to explore the API directly? Browse the live OpenAPI schema, try endpoints from your browser, and generate client code.
Authentication
All API requests require authentication using an API key. Include your API key in the request header.
Don't have an API key? by logging in.
API Parameters
Form String Reference
The form and last20Starts fields contain the runner's finishing positions (most recent last).
Statistics Fields
Each runner includes comprehensive career statistics broken down by context:
Thoroughbred-Specific Fields
Frequently Asked Questions
Everything you need to know about integrating horse racing data into your application