Turtle +EVTurtle +EV
Data API · REST + point-in-time

Sports edge data,
graded in the open.

A REST API for no-vig fair value, expected value, and calibrated probability. Every number traceable to its source, every pick settled win or loss against official results, and canonical player & game IDs on every row so it joins straight to your data. Built for quant and product teams. Not another odds screen.

downstream of settlement · no official-league-rights claim · honest coverage

one pick · fully tracedlive
J. Crawford · Total Bases · UNDER 1.5
raw_prob0.71
calibrated0.70
served0.70
gradedWIN +0.86u
ev=+58.2%fair_value=−233clv=2.5→1.5player_id=crawfjp01
what you get

Four layers. The last three are the moat.

edge

Derived edge

No-vig fair value, expected value, and calibrated probability, with the full chain from raw model output to the final capped number, live on every pick, so you can reconcile each value field by field.

graded

Graded, with a calibration trail

Every pick settled WIN / LOSS / VOID / PUSH against official results, carrying the exact model probability it was graded against plus realized units. That is a real calibration audit you can run against us, not a marketing stat.

identity

Resolved identity, with the hit rate on the label

Canonical player, team, opponent, and fixture IDs resolved across six sports, so you join on an ID instead of guessing at names. We publish the measured hit rate per sport in /schema rather than letting you discover it, and we return null instead of a guess (a soccer player is only stamped with a team when that row’s own matchup confirms it). Tennis carries no team because tennis has no teams.

point-in-time

Point-in-time correct

2M+ as-served snapshots plus closing-line value computed from real tracked line movement. Backtest the board exactly as it stood, not a post-hoc rewrite, and never a synthetic opening line. The tracking window is recent, so CLV accumulates forward and older picks carry null rather than a fabricated open.

the feed

Reads like a data dictionary, on purpose.

We sell a narrow, real edge, not broad commodity odds. Four sports, UNDER-focused by design, typically a few hundred live picks at a time. If you need cheap multi-sport raw odds, we'll tell you we're not the right vendor.

coverageLive picks: MLB · Soccer · Tennis · WNBA. Graded results + sharp money: all 9 sports / every league (NBA, NHL, golf…)
endpoints/picks · /history · /results · /sharp · /odds · /edges · /projections · /prediction-markets · /divergence · /books · /leagues · /events · /markets · /filters · /schema · /health · /openapi.json
identityCanonical player / team / opponent / fixture IDs across 6 sports, resolved from maintained sources so you join on an ID. The measured hit rate per sport ships in /schema, and unresolved returns null, never a guess
clvClosing-line value from real tracked line movement (first-seen open vs last-before-start close), never a synthetic opening line. Forward-accumulating: the tracking window is recent, so older picks carry null
prediction marketsLive Kalshi + Polymarket implied probability + liquidity for sports (partner-licensed), the real-money crowd alongside our sportsbook fair value
divergencePrecomputed cross-venue gap: where the prediction market disagrees with the no-vig book consensus on the same market (MLB moneyline), ranked by size
sharp money76K graded sharp signals (July 16, 2026): side, conviction, no-vig fair vs best odds, line movement, Kelly, realized units. Line movement populates on player-prop markets and is null on game-level ones, which /schema states plainly
no-vig oddsFair value across 30+ books w/ coherence flags; best-book odds under a redistribution addendum
fieldssport, player, canonical_player_id, team, opponent, canonical_fixture_id, stat, line, pick, book, raw_prob, calibrated_prob, probability, ev, fair_value, payout, result, units, beat_close, clv
deliveryREST / JSON · deny-by-default keys · envelope + provenance · versioned /v1
historyas-of snapshots · dispute-grade reconciliation
integration

One header. Every number, traceable.

Deny-by-default keys, a stable response envelope, per-key rate limits, and verbatim provenance on every pick. Versioned /v1, additive-only, breaking changes ship as /v2 with 90 days' notice.

Full reference at /developers →
$ curl -H "Authorization: Bearer $TEV_API_KEY" \
    "https://turtleevlabs.com/api/v1/picks?sport=mlb&limit=1"

{
  "schema_version": 1,
  "generated_at": "2026-07-09T19:47:07Z",
  "count": 1,
  "data": [{
    "player_name": "J. Crawford",
    "canonical_player_id": "crawfjp01",
    "team": "SEA", "opponent": "LAA",
    "stat_type": "Total Bases", "pick": "UNDER",
    "raw_prob": 0.71, "calibrated_prob": 0.70,
    "probability": 0.70, "cap_applied": false,
    "ev": 58.2, "fair_value": -233
  }]
}
packages

Priced for the edge, not the volume.

We onboard partners by hand while self-serve checkout is being built, so tell us your use case and expected volume and we'll get you a key and the right plan.

Trial

Kick the tires.

$0time-boxed
  • 30 req / min
  • 5k req / day
  • picks:read
  • 90-day history
Contact us

Starter

Single product, one sport stack.

$199/ month
  • 120 req / min
  • 250k req / day
  • All 4 live sports
  • Graded results + canonical IDs
Contact us
most integrated

Pro

Production integrations.

$499/ month
  • 600 req / min
  • 2M req / day
  • Full provenance chain + CLV
  • Point-in-time history · priority support
Contact us

Enterprise

Volume, raw odds, streaming.

Customtalk to us
  • Negotiated limits
  • Raw-odds entitlement*
  • Cross-venue + WebSocket feed
  • SLA + DPA
Contact us

* raw-odds entitlement served on OddsEngine books only, under a signed redistribution addendum.

the honesty surface

We publish the losses too.

Every pick in the feed is graded against official results and kept, wins and losses both. That's the difference between a data feed you can audit and a screenshot you have to trust.

10,565
graded wins · 30d
7,644
graded losses · 30d
2,599
voids (missing player)
1.9M
point-in-time snapshots
questions

What buyers ask first.

What is the Turtle +EV Data API?

A commercial REST API for sports edge data: no-vig fair value, expected value, calibrated win probability, and graded WIN/LOSS outcomes for player props, delivered as clean JSON, versioned, with per-pick provenance. It is derived edge data, not a raw odds screen.

Which sports and markets does the data cover?

Live positive-EV picks cover MLB, soccer, tennis, and WNBA. Graded results and sharp-money signals span nine sports and every major league, including NBA, NHL, and golf. Coverage is UNDER-focused player props by design.

Do you provide graded results and closing-line value (CLV)?

Every pick is settled WIN / LOSS / VOID / PUSH against official results with realized units, and carries the exact model probability it was graded against, so you can audit our calibration rather than take our word for it. CLV is computed from real tracked line movement (the first line we saw versus the last line before start), never a synthetic opening line. Because it comes from a live tracking window rather than a backfill, CLV accumulates forward: recent picks carry it, older ones carry null instead of a fabricated open.

Can I join your data to my own datasets?

Yes, that is the point of the identity layer: canonical player, team, opponent, and fixture IDs across six sports, so you join on an ID instead of guessing at names. We publish the measured hit rate per sport in /schema rather than implying it is total, because you will measure it yourself on day one. Two things to know when you do: coverage differs between the pre-game board and graded results (they resolve from different sources), and a null is almost always "not applicable" rather than "missing". Tennis carries no team because tennis has no teams, and game-level markets carry no player because there is no single player in them.

Is this a no-vig / fair-odds data feed?

Yes. We publish no-vig fair value across 30+ books with coherence flags, so you can see when a fair price is thin rather than trusting it blindly. Best-book raw odds are available to entitled clients under a signed redistribution addendum.

How is the sports data API priced?

Packages start at $199/month (Starter) and $499/month (Pro), with a time-boxed free trial and custom Enterprise plans for high volume, raw-odds entitlement, and streaming. Self-serve checkout is coming; for now we issue keys by hand, so contact blake@turtle-ev.com.

Build on data you can defend.

Tell us what you're building. We'll set you up with a key, the right plan, and the docs to ship.

blake@turtle-ev.com