Replay scores a set of lineups against a contest that already finished. It ranks each lineup on the real leaderboard, pays it from the real payout table, and reports profit, ROI, cash rate, and best finish. Use it after a slate to see what you would have made, and before a season to test a playbook against history.
Power plan. Replaying a playbook across past slates needs the Power plan. Scoring your workspace entries or a saved build against one contest works on Essential too.
Before you start
- Pick a slate with final scores and at least one contest with a stored leaderboard. See Contest results and the Contest Analyzer.
- For the workspace path, build the slate first. Replay scores the Entries Preview set of the active build tab, never the whole pool. See The lineups panel.
- For a playbook Replay, create a playbook for the sport, site, and mode you want to test. See Create a playbook.
Replay your entries against one contest
- Open the slate in the workspace and open the Contests rail.
- Find a contest row with a Replay button (rewind icon). The button appears once the slate has a finished build and final scores.
- Click the Replay button. The Replay dialog scores your entries at once.
- Check the context line. It names your entry count, the contest, and the field size, so confirm Replay used the contest you meant.
- Click View lineups to open the lineups panel with the results applied. Click Run again to score the current set once more.
- Click Clear replay to remove this contest's results from the workspace.
You can also open the same dialog from the Replay button in the Contest Analyzer header, or from Replay in the lineups panel actions menu.
Read the results
- The headline is net profit and ROI across your entries.
- CASH is how many entries won money. BEST is your best finish against the field.
- AVG SCORE and HIGH show your average and top actual scores.
- SCORE DISTRIBUTION puts every entry on a histogram against the cash line. A wide spread with most bars under the line means the pool has upside and a weak floor.
- TOP FINISHERS lists your eight best entries with rank, score, payout, and profit. The list scrolls when the dialog has no room for all eight rows.
- A Partial marker means some players have no final points yet. Those players count 0, so re-run after the slate finishes scoring.
The results in the lineups panel
After a run, the results attach to the workspace.
- A chip in the lineups panel tab row names the contest and your cash count. Click it to reopen the dialog without a new run. With several contests replayed, the chip opens a menu with one row per contest and Clear all.
- Every lineup card gains a REPLAY footer with rank, payout, profit, score, and whether it cashed. Each card also shows its actual score next to its projection.
- Rank by gains an Actual option, so you can sort the pool by real points.
When you change the selection, the entry count, or a player inside an entry, DFS Hero re-scores every applied replay. Switching the active build tab clears every applied replay.
Replay a past slate from the Day View
This path works from a slate on a past date, with no workspace open.
- On the Day View, click Change date and pick a past day.
- Find a slate in the Locked group with a Replay button (rewind icon). The button appears only when the slate has final scores and at least one stored leaderboard.
- Click the Replay button.
- Pick a subject at the top: My entries, Saved build, or Playbook. My entries appears only when the slate holds filled entries you uploaded, and DFS Hero preselects it.
- Fill in the fields for the subject and click Run replay. Results appear inside the dialog and vanish when you close it.
My entries
Replay scores the lineups you submitted on this slate, contest by contest. Click Run replay. One row per contest shows the entry count, fee, and net profit. Click a row to expand the full results view. A contest with no stored leaderboard, or with an incomplete one, cannot be scored, and its row says why. A status line tells you when an entry had no lineup or when a contest has unscored players.
After you upload an entries CSV on a past slate with filled entries, this dialog opens on its own with My entries selected. See Upload your entries.
Saved build
| Setting | What it does | Default |
|---|---|---|
| Build | Which saved build to score. | Newest build |
| Contest | Which contest with a stored leaderboard to score against. | Largest field |
Click Run replay. Replay scores the whole saved pool against the contest. A pool of 10,000 lineups pays 10,000 entry fees, so the headline shows what the whole pool would have cost, not what your real entries would have made. Pick the contest you entered, not the largest one; a 150-max field and a single-entry field pay very differently for the same lineups.
Playbook
| Setting | What it does | Default |
|---|---|---|
| Playbook | Which playbook to rebuild on this slate. Only playbooks that match the slate's sport, site, and mode appear. | Your default playbook, else the first |
| Contest | Which contest to score against. | Largest field |
Click Build & run replay. The run builds and simulates the playbook on this slate, scores it, and continues on the Playbooks page. With no matching playbook, click New Playbook to create one. The playbook list loads on the Power plan only.
The card's more menu (three dots) also holds Replay with playbook with a submenu of matching playbooks.
Replay a playbook across past slates
A playbook Replay rebuilds the playbook on up to 20 archived past slates, simulates each build against a real contest, scores every lineup, and enters the lineups a cloud run of the playbook would have entered. The result is a record on the playbook card. This path needs the Power plan.
Open the setup form
- Click Playbooks in the top bar.
- On a playbook card, click Replay on past slates. A card with a record shows View record instead, which opens the latest ledger; use Replay the past in the card's Actions menu to start a new run.
The playbook interview's closing screen offers See how it would have done, which opens the same form.
Pick the slates
| Control | What it does | Default |
|---|---|---|
| Last 5, 10, 20 | Picks the most recent eligible slates. | 5 slates picked |
| Played | Picks every listed slate you played. | |
| Slate row | Check a slate to include it. A You played this badge marks slates you entered. | Your 5 most recent entered slates, else the 5 most recent eligible |
| Entry limit | Keeps only contests with that per-user cap: Single Entry, 3-Max, 20-Max, or 150-Max. Every row switches to its largest matching contest. The chip shows the chosen value. | Any |
| Fee | Keeps only contests in that fee band: Under $5, $5-20, $20-100, or $100+. The chip shows the chosen value. | Any |
| Contest | Keeps only contests whose name holds the word you type, for example "Play-Action". Case and punctuation do not count. Press Enter or click Apply; Clear removes it. The chip shows the word. | Any |
| Change | Picks another contest on that slate. The list holds the slate's 12 largest contests that match the filters. | The contest you entered, else the largest field |
| Entries | How many lineups to enter in that contest. The maximum is the contest's per-user cap, 150, or the playbook's lineup count, whichever is smallest. A number you type stays with its contest: when Change or a filter puts another contest on the row, the field shows that contest's default. | Your real entry count when you entered that contest, else the contest's cap |
The list holds up to 60 slates from the last 365 days. A disabled row states its reason: no player pool was archived at lock, or no contest matches the filters and has a saved leaderboard. Pick slates with the You played this badge when you can. The ledger then compares the playbook against what you entered by hand.
DFS Hero remembers the three filters for each playbook on this browser. A Single Entry playbook opens on Single Entry contests every time.
After a run, Replay more slates opens the form with the same slates, contests, and entry counts as the run you were reading. Adjust the playbook, come back, and run it on the same contests to compare. Each entry count stays with its contest, so a filter that moves a row to another contest also resets that row's entries to the new contest's default. A slate that cannot be replayed right now stays unselected, and a line above the list counts those slates. Widen the filters and a held-out slate comes back.
Set the run and start it
Set Entries per contest for contests with no entry cap on record. The maximum is 150 or the playbook's lineup count, whichever is smaller. The default is your most common entry count, else 150, or the playbook's lineup count when it builds fewer than 150. A commitment line under the button shows the total entries, the stake, and the expected run time.
Click Run replay · N slates. A run with 2 or more slates runs in the cloud, so you can close the page. The progress board shows one cell per slate as it builds, simulates, and scores, plus running totals for profit, ROI, entry count, and stake. Stop replay ends the run, drops unfinished results, and keeps every slate already scored.
Read the ledger
The ledger opens when the run finishes, and again from View record on the card.
The decision block gives a verdict: working, breaking even, or underperforming. With 1 or 2 scored slates it says there is not enough evidence yet. Under 15 scored slates the app calls the result an early signal, not a verdict. Trust a record only from 15 scored slates up. When SELECTION below recommends a selection your playbook does not use, the verdict says a better selection is recommended below.
Under the verdict:
- Net profit, ROI, stake, return, cash rate, and best finish across the run.
- A comparison line when you entered a contest the run replayed: the playbook's result on those entries next to your own.
- A concentration callout when one slate carried more than half of the return. A record that one slate carried is one good night, not a strategy.
- Running profit and loss, a chart of cumulative profit over the slates. It shows at 3 or more scored slates.
- Slate rows with date, contest, finish tier, and net. Click a row to see the field size, fee, your entries and cashes, how far the best lineup finished from the cash line, whether you entered the pool's best lineup, and a strip of every lineup the slate built against the cash line. A skipped slate states its reason. A slate where a playbook guardrail kept the playbook out enters nothing, and its row names the guardrail. A row that the contest's per-user entry limit held below your entry count says so.
Adjust playbook opens the playbook's editor. Replay more slates returns to the setup form.
Selection
SELECTION answers which selection method this run should have used. It re-enters the stored pools with no new run, so use it before you edit the playbook. A sentence under the title names the selection the record uses.
When the ledger opens, DFS Hero scores the run again under every selection method with every Rank by, over the same slates, entries, and contests. It builds and simulates nothing again. The comparison runs in the background and takes from a few seconds to a few minutes; a bar shows the slates done.
- The table ranks each selection by ROI and shows its profit, its share of entries in the Top 1% and Top 5% of the field, its cash rate, and the slates it entered. On a phone the profit and the three rates sit under the selection's name.
- Recommended marks the selection to use. A selection is recommended over the run's own only when its lead still holds after you remove its single best slate. A run of up to 20 slates can rank a selection first because of one big prize, and this check keeps that selection from the recommendation. The sentence above the table names a selection that ranks higher but fails the check. When no selection passes, or the run has 2 slates or fewer, the run's own selection stays recommended.
- Your playbook marks the selection your playbook uses now. This run marks the record's selection when your playbook uses another one.
- The table shows the top 10 rows, the run's own row, the recommended row, and your playbook's row. Show all opens every row.
- Selections that got the same result on every slate share one row.
- Min Uniques uses your playbook's Min uniques floor. At a floor of 1 it picks what Highest Ranked picks, so the table leaves it out.
- Click a row to see that selection's full ledger: the verdict, the chart, the totals, and the rows below change. When your playbook does not use that selection, the verdict names it, for example "Working so far with Highest Ranked · ROI." When some slates keep the run's own numbers, the verdict names its share, for example "on 9 of 12 slates." The line beside Entries per contest names the selection the ledger shows and its result. Reset returns to the run's own selection.
- Entries per contest tries another entry count. The rows below change, and the table ranks every selection again at that count. Each row enters no more lineups than its pool holds or its contest allows per user, and the line beside the field counts the rows that entered fewer.
- Use in playbook saves the recommended selection in the playbook as the table measured it: its method, its Rank by, its Min uniques floor, and the run's keep-count. Every other setting stays. The run's record changes to that selection at the run's own entry counts, so the ledger, the RECORD band on the playbook card, and the run in your past replays show its results. The table then ranks every selection again around it. When a slate of the run cannot be scored again, the record keeps the run's own selection and a note says so; the playbook still saves the selection. A message names the selection and offers Undo, which puts the playbook and the record back as they were.
A view uses the run's stored sims and the Before fill guardrails the run applied. Win Paths and the sim metrics in Rank by need a run that simulated its pool. Min Uniques joins the table only when the playbook's Min uniques floor is 2 or more, since a floor of 1 picks what Highest Ranked picks. A note under the table names a selection the stored pools cannot serve. Every row uses today's contest scoring. When that scoring reads the run's own row differently from what the run recorded, a note states both numbers.
The record on the card
A playbook card shows a RECORD band with the slate count, NET, ROI, BEST FINISH, and View record. When you change the playbook's selection after the replay, the band adds prev. selection: its figures come from the selection the playbook used before. Point at the line to see that selection's name. While a run is in flight the card shows a Replaying badge; click it to reattach to the run.
How it works
Rank and payout
Before Replay places a lineup, it takes your own real entries in that contest off the leaderboard. Your lineups then never compete with the entries you really played. An entry that Replay cannot match to a leaderboard row stays on the leaderboard.
A lineup's rank is 1 plus the number of entries that scored higher. Replay places an entry set together: the workspace path, My entries, and the lineups a playbook Replay enters. In a set, your own lineups that scored higher also push a lineup down. A saved build and the pool strip of a playbook Replay row are pools of candidates, so Replay places each of their lineups alone.
Entries that tie share the prizes of the positions they hold, split evenly, as DraftKings and FanDuel pay a tie. In a set, your own lineups at the same score join the tie and share one rank. The cash line is the lowest paid score on the leaderboard, and a lineup below it pays $0.
Profit is payout minus entry fee. Cash rate is cashed lineups divided by total lineups. ROI is net profit divided by total entry fees. A lineup that scores 0 ranks last and loses its entry fee.
In a showdown contest the captain slot counts 1.5 times. Players with no final points count 0, and the Partial marker tells you how many.
What each path scores
- The workspace path scores the Entries Preview set of the active build tab. It keeps an entry that scores 0, and that entry loses its entry fee.
- My entries on a past slate scores the lineups you uploaded, contest by contest, and keeps zero-scoring entries because they were real paid entries.
- Saved build scores the whole stored pool and drops lineups that score 0.
- A playbook Replay rebuilds the playbook from the player pool DFS Hero archived at lock and simulates it the way a scheduled cloud build does, against the matched contest's real field size and payouts. It scores every lineup. It then enters the lineups a cloud run of the playbook would enter in that one contest, up to the contest's per-user entry limit.
Guardrails in a playbook Replay
A playbook Replay runs the playbook's guardrails at the same two checkpoints as a cloud run. When a Stop the run or Skip fill guardrail trips, the playbook enters nothing on that slate: no fee and no winnings. At After build, the slate is skipped and its row names the guardrail. At Before fill, the row keeps its pool, shows zero entries, and names the guardrail. The verdict and the chart do not count a slate where the playbook entered nothing. A Time to lock guardrail always passes, because a past slate has no run clock.
Contest matching in a playbook Replay
DFS Hero picks the contest you entered first, then the largest field. When the chosen contest cannot be read, or its stored leaderboard is incomplete, the run falls back to a contest you entered, then to the largest field in the same fee band with a readable leaderboard. A slate with no usable contest is skipped, and the row says why.
Limits
- 20 slates per run, from up to 60 listed slates in the last 365 days.
- 150 entries per contest at most, never more than the playbook's lineup count, and never more than the contest's per-user entry limit.
- 10,000 lineups scored from a saved build.
- One playbook Replay at a time per account.
- A playbook Replay needs the Power plan. Scoring your entries or a saved build against one contest does not.
- A build or entry set older than your data retention cutoff behaves as if it does not exist.
What Replay does not do
Replay does not write to Film Room or to the Dashboard. It changes no build, no entries, and no playbook. It is separate from the Replay tab in Game Sim, which replays a simulated game.
Troubleshooting
The row has no Replay button : the slate has no finished build, or the contest has no final points. Build the slate and wait for final points.
"No lineups fill this contest's entries, so there is nothing to score." : the plan for this entered contest holds no lineup. The contest's Fill switch is off in Contest Setup, or an exposure cap excludes every lineup. Turn the switch on or loosen the cap.
"None of your {N} entries could be scored against this contest." : no entry matched a scored player. Check that the build belongs to this slate.
"This contest's leaderboard is incomplete, so Replay cannot score it." : the stored leaderboard holds more than 10% fewer rows than the contest had entrants, so the ranks below the missing rows would be wrong. Pick another contest. A playbook Replay moves to another contest on its own.
"Could not run the backtest for this contest. Try again." : the contest's leaderboard could not be read. Close the dialog and try again in a minute.
"No actuals available for this slate yet." : the slate has no final points yet. Come back after the games finish.
"Contest leaderboard data not available" : the contest has no stored leaderboard. Pick another contest with the Data filter on.
"No filled entries to replay." : your uploaded entries on this slate hold no lineups. Fill them first, or use Saved build.
"Could not run the replay. Try again." : the past-slate run failed. Try again, then try another contest.
"Could not start the replay. Try again." : the playbook Replay did not start from the past-slate dialog. Open the Playbooks page and start it from the setup form.
"You already have a replay running. Stop it from the progress view, or let it finish." : one playbook Replay runs at a time. Open the running one from the Replaying badge on its card.
"The slate you came from cannot be replayed yet, so it is not selected." : that slate has no archived pool or no stored leaderboard. Pick other slates.
"No replayable {SPORT} slates yet" : no slate for that sport was archived at lock and scored with real results. NFL replays start with Week 1.
"Replay stopped." : you stopped the run before any slate finished. Click Replay more slates.
"This run failed." : the run hit an error. Click Run again. "The build engine reported an internal error." means the problem was on the DFS Hero side.
"Replay is unavailable right now. This is a problem on our side, not with the slates you picked." : wait and try again later.
"That view could not be loaded. Try it again." : a re-slice on the ledger failed. Click the link to retry.
"This slate's lineup pool could not be read." or "No lineup pool was stored for this slate." : the pool strip has nothing to draw for that row. The row's numbers stand.
"We could not confirm the stop. Try again." : the stop request did not reach the run. Click Stop replay again.
"This feature requires a Power subscription" : upgrade from Settings > Subscription.
Related
Was this article helpful?