# What drives the cost of an odds feed

> What sets odds API pricing: coverage, exchange pairing and how usage is metered. Plus how OddsRelay prices each call from the request, and what costs nothing.

Published 1 July 2026 · updated 5 November 2026

**Odds API pricing follows two things: the work a vendor does to produce the data, which decides what a feed is worth, and the way it meters your use of it, which decides what your month actually costs.** Coverage and exchange pairing are most of that work.

## Five things set the price

- **Coverage breadth and depth**: how many bookmakers, and how far into each book's markets. The headline match-odds price is the easy part. The deeper markets, and the books your users expect to see, are where upkeep goes.
- **Raw or matched**: raw is each bookmaker's prices as the book shows them. Matched pairs each back price with an exchange lay price for the same selection, which is extra work on top of raw.
- **Freshness**: the younger the prices, the more work they take to deliver. Whatever a vendor charges for it, check that each reply is stamped with when it was built and when each venue was last read, so you can measure price age yourself.
- **The metering model**: a flat licence, a price per request, or credits weighted by how much each request asks for.
- **Support and terms**: self-serve docs, or onboarding, custom bookmakers and a contract negotiated per deal.

## Metering matters more than the headline figure

Two feeds with the same monthly figure can cost you very different amounts. What matters is how your own calls are counted. A comparison page that polls a whole board all day spends differently from an oddsmatcher that asks for one sport at a handful of books.

So ask any vendor whether a narrower request costs less, whether asking again for unchanged data costs anything, and whether you can learn a call's price before you make it. Our view is that the last should be a yes everywhere. If you can only find out what a call costs by making it and reading the invoice, you are budgeting blind.

## A cheap feed can cost the most to run

A low sticker often means the work has been left with you. A raw feed is cheaper to publish because it stops before the pairing. If your product needs back and lay side by side, someone still has to match events across venues, fetch exchange prices and check there is money on the lay side. That cost lands in salaries and calendar time instead of on an invoice.

Compare total cost to a working product. We set out the effort in [buy versus build](https://oddsrelay.io/blog/buy-vs-build-odds-data), and the wider vendor checklist is in [how to choose an odds data provider](https://oddsrelay.io/guides/how-to-choose-an-odds-data-provider).

## Every OddsRelay plan gets every product

The self-serve plans are Free, Starter and Pro, and the paid ones are for personal use. Each one carries the same data: the six matched boards (Standard, Each-way, Extra place, Best odds guaranteed, Dutching, 2Up) plus raw, across the 60+ bookmakers live in the UK & Ireland, bet365 included, and [historical odds](https://oddsrelay.io/products/historical-odds), the bookmakers' and exchanges' past prices since 17 October 2026. Plans differ only in the size of the token pool: a paid plan's refills each month, and Free's is one pool that never refills.

Dutching groups back prices across bookmakers. The other matched boards pair each back price with lay from Betfair, Smarkets and Matchbook, and leave out any lay with too little money behind it.

[Enterprise](https://oddsrelay.io/enterprise) is for any business, even one using the data only in-house, and for serving other people with the data, or anything made from it, such as a comparison site, an oddsmatcher or alerts for your users. It also covers more tokens than Pro holds and custom bookmakers, with terms and billing agreed per deal. The figures for every plan are on [the pricing page](https://oddsrelay.io/pricing).

## A call's price comes from the request

Each live-feed call spends tokens from the pool, and its price is set by the board and the filters you send. The size of the reply plays no part. Each board has a whole-board price. On standard, dutching and raw, every sport, bookmaker, exchange or market you name narrows it, so a request for one sport at a couple of bookmakers costs no more than the whole board and usually less. The remaining boards cost the same whatever you filter.

Several things cost nothing at all:

- **`304` replies**: every data reply carries an `ETag`. Send it back as `If-None-Match`, and an unchanged board answers `304` for free.
- **Quotes**: add `quote=true` to any data request and it returns the price instead of the board, without spending.
- **Discovery and accounting**: `/v2/sports`, `/v2/events`, `/v2/bookmakers`, `/v2/regions`, `/v2/usage`, the price table at `/v2/pricing` and the list of historical odds day files at `/v2/historical/files`.
- **Empty replies and refusals**: a call that returns no events, or is refused, spends nothing.

Pricing a call before making it · example:

```bash
curl --compressed -s -H "Authorization: Bearer $ODDSRELAY_KEY" \
  "https://api.oddsrelay.io/v2/odds/standard?region=uk&sports=soccer&quote=true"
# {"cost": …, "remaining": …, "rate_card": "…"}
```

Every reply to a valid key carries an `X-Tokens-Cost` header, with `X-Tokens-Remaining` beside it when the balance is known. If a call's price is above what is left, the answer is a `402` and nothing is served or spent.

## Budget a month before you buy

You can work out a month's spend on paper:

1. List the boards your product renders. An oddsmatcher may need standard and each-way. A comparison page may only need raw.
2. Narrow each request to what you actually show: the sports, bookmakers and markets on screen.
3. Quote each distinct request once with `quote=true`.
4. Multiply each price by how often you will call it, then take off the calls you expect to come back `304`.
5. Set the total against [each plan's token pool](https://oddsrelay.io/pricing) for a tool you use yourself. For a business, or a product that serves other people, bring that total when you [talk to us about Enterprise](https://oddsrelay.io/enterprise).

The full rules, including how filters combine on each board and what to do on a `402` or a `429`, are in [filters and tokens](https://oddsrelay.io/docs/guides/filters-and-tokens). How to keep the `304` share high is in [polling an odds feed efficiently](https://oddsrelay.io/blog/polling-an-odds-feed-efficiently), and [testing a feed before you buy](https://oddsrelay.io/blog/how-to-test-an-odds-feed-before-you-buy) checks the data itself against your product. [Is there a free odds API?](https://oddsrelay.io/blog/is-there-a-free-odds-api) shows how to run these sums on a free allowance before paying anything.

## Quote your own calls

Quoting needs a key, and a quote spends nothing, so price your calls on your own Free key before you choose a plan or ask about Enterprise. [See coverage](https://oddsrelay.io/coverage) for whether the bookmakers you need are on the feed.

18+ · OddsRelay supplies odds data only and takes no bets. Please gamble responsibly.

Source: https://oddsrelay.io/blog/what-drives-the-cost-of-an-odds-feed
