Full Result Charts File Format

This is Post Time Daily's official specification for comma-delimited chart files (revision 1.10, dated Feb 1, 2022) documenting thoroughbred racing data.

File Naming Convention

Format: YYYYMMDD_CH_DAY_TTT.TXT

ComponentDescription
YYYYMMDDDate components concatenated (year, month, day)
CHConstant identifier
DAY or EVECard type (evening only if track runs two cards same day)
TTTTrack code (three-letter code, or two letters plus underscore)

Example: 20250621_CH_DAY_MTH.TXT


Race Types Reference

CodeDescription
MCLMIncludes maiden claiming and optional maiden claiming
MSWIncludes maiden special weights
CLMIncludes claiming, optional claiming
ALWIncludes allowance, starter allowance, and allowance optional claiming
HDCPIncludes handicap, starter handicap, claiming handicap and optional claiming handicap
STKIncludes stakes, claiming stakes, and optional claiming stakes
MATCHIncludes match races
TRAININGIncludes training races

Track Conditions Reference

CodeDescription
fstFast
frFrozen
gdGood
hyHeavy
myMuddy
slSlow
stdStandard
slySloppy
wfWet Fast
wetWet
ddDead
esyEasy
fmFirm
gdtofmGood to Firm
gdtosfGood to Soft
hdHard
sfSoft
ylYielding
??Unknown

Wager Types Reference

CodeWager Type
0Match Rival
1Roulette
2Two in the Money
3Pick 3
4Pick 4
5Pick 5
6Pick 6
7Pick 7
8Countdown
9Pick 9
ATriactor
BSuper Tri
CClassix
DDaily Double
EExacta
FPerfecta
GPerfector
HBingo Bet
IInstant Daily Double
JExactor
KWin Four
LPlace Pick All
MConsolation Pick 3
NFuture Wager
OOmni
PJockey Challenge
QQuinella
RTriple
SSuperfecta
TTrifecta
UTri Super
VOdd or Even
WTwin Trifecta
XPlace Pick 9
YSuper Bet
ZConsolation Double

Course Type Classification

CodeDescription
0Dirt
1Turf
2Inner Dirt
3Inner Turf
5Outer Turf
7Downhill Turf
8All Weather
33Hurdle
65Steeplechase
97Jumps (or, other)

Race Record Structure (51 Fields)

FieldTypeDescription
1string(1)Record type: will be 'R' for race records
2string(4)Version string (currently '1.10')
3string(3)Track ID
4dateRace date (format: 'MM/dd/yy')
5numberRace number
6string(1)Day/Evening indicator: 'D' = Day, 'E' = Evening card
7string(3)Country ID: 'USA' = United States, 'CAN' = Canada
8string(2)Breed type: 'TB' = Thoroughbred, 'MX' = Mixed
9string(150)Race description/conditions
10numberOfficial indicator: 0 = No, 1 = Yes
11numberCanceled indicator: 0 = No, 1 = Yes
12string(8)Race type categorization
13numberOptional claiming indicator: 0 = No, 1 = Yes
14numberStarter allowance/handicap indicator: 0 = No, 1 = Yes
15string(1)Restrictions designation
16string(3)Age restrictions notation
17string(6)Sex restrictions: 'MALE', 'FEMALE', or 'MIXED'
18numberGraded Stakes level: 0-3 scale
19numberRace distance (in feet)
20string(4)Distance units. This will always be 'Feet'
21numberInner track indicator: 0 = No, 1 = Yes
22numberTurf indicator: 0 = No, 1 = Yes
23numberAbout distance indicator: 0 = No, 1 = Yes
24numberSteeplechase: 0 = No, 1 = Yes
25numberHurdle indicator: 0 = No, 1 = Yes
26numberHunt indicator: 0 = No, 1 = Yes
27numberChute start indicator: 0 = No, 1 = Yes
28numberPurse (past performance lines display)
29numberPurse (program display)
30numberMinimum claiming price
31numberMaximum claiming price
32string(6)Track condition code
33stringReserved
34numberFraction 1 (seconds)
35numberFraction 2 (seconds)
36numberFraction 3 (seconds)
37numberFraction 4 (seconds)
38numberFraction 5 (seconds)
39numberFinal time (seconds)
40stringReserved
41stringReserved
42stringReserved
43stringReserved
44stringReserved
45stringReserved
46numberCourse type classification (0-97 range)
47numberReserved
48numberReserved
49numberReserved
50numberReserved
51numberReserved

Horse Record Structure (56 Fields)

FieldTypeDescription
1string(1)Record type: will be 'H' for horse records
2string(3)Track ID
3dateRace date (format: 'MM/dd/yy')
4numberRace number
5string(1)Day/Evening indicator: 'D' = Day, 'E' = Evening card
6string(3)Country ID: 'USA' = United States, 'CAN' = Canada
7string(2)Breed type: 'TB' = Thoroughbred, 'MX' = Mixed
8string(40)Horse's name
9string(3)Program number (blank if scratched)
10numberScratch indicator: 0 = No, 1 = Yes
11numberPost position (zero if scratched)
12numberNon-betting indicator: 0 = No, 1 = Yes
13string(1)Entry letter (e.g., 'A', 'B', 'C', etc.). Blank if not part of an entry
14numberStart position
15numberPosition 1
16numberPosition 2
17numberPosition 3
18numberPosition 4
19numberPosition 5
20numberFinish position
21numberOfficial finish
22numberDead heat indicator: 0 = No, 1 = Yes
23numberDisqualified indicator: 0 = No, 1 = Yes
24numberBeaten lengths 1
25numberBeaten lengths 2
26numberBeaten lengths 3
27numberBeaten lengths 4
28numberBeaten lengths 5
29numberFinish beaten lengths
30numberTote odds
31string(8)Morning line odds (formatted string)
32numberMorning line odds (decimal)
33numberFavorite indicator: 0 = No, 1 = Yes
34numberWin mutuel
35numberPlace mutuel
36numberShow mutuel
37-46stringReserved
47-56numberReserved

Exotic Result Record Structure (12 Fields)

FieldTypeDescription
1string(1)Record type: will be 'X' for exotic records
2string(3)Track ID
3dateRace date (format: 'MM/dd/yy')
4numberRace number
5string(1)Day/Evening indicator: 'D' = Day, 'E' = Evening card
6string(3)Country ID: 'USA' = United States, 'CAN' = Canada
7string(2)Wager type code
8string(30)Winning combination(s). May contain 'ALL' or '/' characters
9numberNumber of correct combinations (e.g., hitting 5 of 6 races)
10numberPayoff amount
11numberCarryover amount
12numberBase wager amount (e.g., 2.00 for $2 bet, 0.50 for $0.50 bet)

Technical Notes

  • Character fields are quoted; embedded quotes convert to percent symbols
  • Payoff, fraction, and length fields contain two decimal places
  • Canceled races show no horse or exotic records; canceled_flag set to 1
  • Horse records ordered by official finish position, then scratched horses
  • Wager combinations may include "ALL" notation or "/" for shared positions

Last updated: February 1, 2022

Copyright 2025 by Scratchsoft, Inc.