Terms, concepts, and algorithms

This section contains a description of the common terms and concepts used in WinSplits Pro in alphabetical order. The algorithms that are used for calculating various measures are also explained here.

Analysis views

Analysis views (or modes) are the options that determine the contents and appearance of the various result lists, tables, graphs, and replays in WinSplits Pro. You can select the view you want on the left in the tab toolbar. Additional views can be downloaded from the WinSplits homepage.


The concept of consistency has several different meanings depending on the context in which it is used. Regardless of the context, a lower value indicates greater consistency.

  • For a class: the average standard deviation of the runners' performance indices over all the legs of the course.
  • For a runner: standard deviation of the runer's leg performance indices weighted by leg length.
  • For a leg: standard deviation of all the runners' performance indices on that leg.

Custom class

WinSplits Pro allows you to create your own course containing only particular runners and legs. Such courses are called custom classes, and they let you compare runners across class boundaires or on only certain parts of the original courses.

Error-free time

A runner's error-free time is the time that remains when that runner's total time loss for the course is subtracted from the result.

Error frequency

A runner's error frequency is calculated by dividing the number of legs the runner made errors on by the total number of legs in the course.

Error threshold

The error threshold indicates the minimum difference between a runner's actual split time and the time the runner would have had with a normal performance that is sufficient for WinSplits to determine that the runner made an error on that leg. That is, a leg is considered to have an error if this difference is greater than the error threshold. The error threshold consists of both a time value and a percent value, and both must be exceeded in order for WinSplits to determine that an error has occurred. The error threshold can be adjusted according to your own taste so that it corresponds well to the level of runners, event type, or terrain.

Ideal time

The ideal time (or Superman's time) for a class is the sum of the best split times on each leg.

Performance index

The performance index is a measure of a runner's performance in relation to the fastest runners in the class. For each leg, a quotient of the average of the 25% fastest split times and the runner's split time is calculated. These quotients are called performance indices. Using the average of the 25% best split times instead of just using the best split time produces a more robust measure.

A performance index of 100% means, by definition, that the runner's split time is the same as the average of the 25% fastest split times on that leg. The higher the performance index, the better the performance. Performance index for the entire course is calculated as the quotient of the sum of the averages of the 25% fastest split times on each leg and the runner's result for the course.

Looking at an ordered list of a runner's leg performance indices can be quite informative. Such a list can clearly show what types of legs presents the greatest difficulties for the runner, and which types of legs suits the runner well.

Pull and following indices

The pull index indicates how much a runner was followed by others, or how much a runner has been in the front of a back. The following index indicates how much a runner has followed during the course, or how much time the runner spent being second or worse in a pack. Together, the pull and following indices are known as the pack index, and can be shown either for an individual leg or over the entire course. The pack index for the whole course is the sum of each leg's index weighted by leg length.

The calculation of pull and following indices is based on linear interpolation of the runners' punching times at controls. At each position during the leg, the current pull index is calculated as below. Following index is calculated in a similar way, with the words "in front of" and "behind" switched from the explanation below.

  • A runner is 0-7 seconds in front of another runner: 100% pull index.
  • A runner is 7-20 seconds in front of another runner: linear drop from 100% down to 0% (13,5 seconds in front indicates a pull index of 50%).
  • A runner is more than 20 seconds in front of another runner: 0% pull index.

The pull index for the leg is then obtained by integrating over the length of the leg. If two runners are more than 20 seconds apart when they punch, then no following is considered to have occurred on that leg. Two runners who punch at a control at the same time are each given a pull index of 50%.

Example: Runner A (the black line in the diagram) punches 11 seconds after runner B (blue) at one control, but punches 5 seconds before B at the next control.

The linear interpolation indicates that A passes B where the lines intersect after 69% of the leg. For the rest of the leg, A has a current pull index of 100%. Then, A's pull index for the entire leg is (1-0.69)*100% = 31%.

The pull index for B between 0 and 25% of the leg (where the time difference between the runners is 7 seconds) goes from (1-(11-7)/(20-7))*100% = 69% up to 100%. B's average pull index for that part of the leg is then (69+100)/2 = 34,5%. B's pull index between 25 and 69% of the leg is 100%. On the rest of the leg, B is running behind A, so B's pull index is 0%. Then, B's pull index for the entire leg is 0.25*34.5+0.44*100+0.31*0 = 53%.

If runner A is running first in a tight pack followed by B and C, then B's pull index is set to 0%, since B is, in turn, following A, who is doing the work in this pack. The sum of a runner's pull index and following index on any given leg is never greater than 100%.

Foillowing index and pull index are measures that should be interpreted carefully, especially on leg level, since it is not known what exactly happened in the pack during the leg. The ony data used for these calculations are punching times, and these are only available at controls. Over the entire course, the variations in packs that can take place on individual legs normally even out, meaning that following index and pull index for the whole course are more reliable measures.

Reference runner

The reference runner affects a number of different functions in WinSplits Pro.

  • When the course consists of loops that the runners ran in different orders (one-man relay), or if a so-called butterfly was used, then the split times are sorted in the same order as the order in which the reference runner ran the course.
  • In certain tables and graphs, times and time differences relative to the reference runner can be shown.
  • Control numbering for custom classes follows the control order of the selected reference runner.

Split time file

WinSplits Pro saves split time data in files with the extension .spl. Each file contains information about an event.

Split time, total time, and passing time

A split time is the time from one control to the next.

A total time is the time from the start up to and including a certain control.

A passing time is the time of day when a runner punched at a certain control.

Time gained by following

Using the following index as a base, WinSplits Pro can calculate how much time a runner gained by following other runners, both on each leg and over the entire course. This calculation should only be seen as a rough approximation and therefore should be interpreted carefully.

The algorithm first calculated the runner's average performance index for the parts of the course where no following took place. This following-free performance index is then applied to the parts of the course where the runner followed others, and a time difference between the actual time and the calculated following-free time is obtained for each leg. These differences can be both positive and negative. A negative difference implies that the runner actually lost time by following.

Time loss

WinSplits Pro can estimate a runner's time lost due to errors by analysing that runner's split times. For each leg, a quotient of the average of the 25% fastest split times and the runner's split time is calculated. These quotients are called performance indices. The medium value of the runner's preformance indices over the whole course, weighted by leg length, is considered the runner's normal performance for the course.

For each leg, the difference (both in time and percent) between the runner's actual split time and the time the runner should have with a normal performance is calculated. The legs on which this difference is greater than both error thresholds are considered to be legs with errors, and the times lost for those legs are set to these differences.

Approximation of time loss becomes more reliable for larger and more homogenous classes, that is, classes containing many runners of a similar ability.