Determining candidates' positions

For to work, we had to first code the positions of the main candidates running for the 2016 U.S. Primary Elections. A team of specialists, mainly composed of political scientists, received training to assess the candidates’ positions from a series of publicly available sources. In addition, all candidates were given the opportunity to help us in the coding of their positions. However, the final assessment of candidates’ positions was always based on the principle that the latter must be substantiated and contained in verifiable, publicly available documents. For instance, if a candidate’s position was coded as “completely agree” this must be, in principle, justified by a specific source which is also displayed in the results section of the tool.

As the candidates’ views on the selected issues can be found in many different publically available records and sources, we first had to establish a hierarchy of sources. Our coders went down this list to gather as much accurate information as possible on candidates’ stances on the 20 issues included in the tool. Here’s the rank-ordered list of the five main categories of sources:

  1. Candidate's 2016 Primary Election Platform (when available)
  2. Candidate's website content, Facebook, Twitter and other official documentation
  3. Interviews and coverage in other media outlets (e.g., TV, newspapers)
  4. Actions/statements of candidate in House/Senate (roll-call behavior)
  5. Other (to be specified by the coders)

Note that in some instances, an exhaustive search of all publicly available documentation provided no evidence to support the candidates’ position on a given statement. Therefore according to our methods this issue has been marked no opinion. If evidence arises that you would like our team to consider, please send the supporting link to

Selecting the candidates does not include all the candidates who have announced their candidature for the 2016 Presidential race. For a number of reasons we had to pick the most important candidates who have so far announced their candidacy and who remain in the race. For the selection of candidates we referred to recent national polls as well as our own assessment, in early September of 2015, of whose candidacy was most likely to succeed in this initial stage of the race, i.e. make it to the first primary elections starting in January 2016. We therefore coded the following candidates (and reserve the right to alter this list with the campaign evolving):

Republicans (in alphabetical order):

  1. Jeb Bush (Dropped out of race, no longer included in results)
  2. Ben Carson (Dropped out of race, no longer included in results)
  3. Chris Christie (Dropped out of race, no longer included in results)
  4. Ted Cruz (Dropped out of race, no longer included in results)
  5. Carly Fiorina (Dropped out of race, no longer included in results)
  6. Jim Gilmore (Dropped out of race, no longer included in results)
  7. Lindsey Graham (Dropped out of race, no longer included in results)
  8. Mike Huckabee (Dropped out of race, no longer included in results)
  9. Bobby Jindal (Dropped out of race, no longer included in results)
  10. John Kasich (Dropped out of race, no longer included in results)
  11. George Pataki (Dropped out of race, no longer included in results)
  12. Rand Paul (Dropped out of race, no longer included in results)
  13. Marco Rubio (Dropped out of race, no longer included in results)
  14. Rick Santorum (Dropped out of race, no longer included in results)
  15. Donald Trump

Democrats (in alphabetical order)

  1. Joe Biden (Declined to run, no longer included in results)
  2. Lincoln Chafee (Dropped out of race, no longer included in results)
  3. Hillary Clinton
  4. Martin O’Malley (Dropped out of race, no longer included in results)
  5. Bernie Sanders (Dropped out of race, no longer included in results)
  6. Jim Webb (Dropped out of race, no longer included in results)

Calculating the nearest candidate shows the overlap between the candidates’ positions and the user's preferences. In order to simplify the interpretation of the results, the latter are expressed in terms of a percentage of overlap. 0% indicates that a candidate and a user’s preferences do not overlap at all, 100% indicates that they completely overlap.

Technically, for calculating a user’s closest candidate, we use the so called “Manhattan (or city-block) distance”, which expresses how close the two respective points are one from another in an n-dimensional space.

At the heart of Societly lies a series of political arguments – or issues - on which it is possible to take a position. For example, Societly offers to users to take a position regarding the statement "gun ownership should remain an absolute right". Users can chose from the following answer categories: 'I fully agree', 'I tend to agree', 'I’m neutral', 'I tend to disagree' and 'I completely disagree'. Societly also allows users to choose the option 'no opinion'.

For calculating the overlap, we first translated the answers given by the users into numbers, using the following key:

'I fully disagree' = 0,

'I tend to disagree' = 25,

'I am neutral' = 50,

“I tend to agree' = 75,

'I fully agree' = 100.

The same values were given to the positions taken up by the candidates. We then started off to calculate the distance (k) between the positions (P) of each user (i) and candidate (e) on every statement (v). Expressed as an equation, this looks like this:

We also gave the users the possibility to indicate how important individual issue statements were for them. Thus, they could give balances to their answers. When users did so, the distance between a user’s positions and the positions of the candidates were multiplied by a weight (W): for issues that were given less weight by a user (through the negative sign -) the distance was multiplied by 0.5. If no particular weight was indicated (in this case the weighting remained neutral, as expressed by the neutral sign =) the mulitiplication used the factor 1. In case of a statement that was given more weight (expressed by the positive sign +), the calculated distance was multiplied by a factor of 2. Mathematically, the weighted distance therefore becomes:

The sum of weighted distances for all statements is divided with the sum of weights to normalise the results to 100%. Obtained value reflects the weighed distance between user and candidates answers. Concurrency with statements is the inverse of obtained distance:

Calculation of Radar dimensions

Every statement can have some increasing effect on one or more radar dimensions. The resultant effect is defined with values: 1 (positive polarity), -1 (negative polarity). Positive polarity means that only positive answers (50-100) increase the value and negative polarity means that only negative answers (0-50) increase the resulting value. Statements with polarity 0 are not included in a radar dimension calculation.

Resulting value regarding all answered questions (Sd) for a candidate or user can vary from 0 to 100, where 100 means total agreement.



For example if two statements describe the radar dimension "Economically Conservative”. First one has polarity value of 1 for the dimension and the other has polarity of -1, the user has to answer “Completely agree” for first and “Completely disagree” for the latter statement to get maximum score on the radar dimension.

In radar calculations weight (importance) of statement for the user is not taken into account.

Some statements may not be included in calculation radar dimensions, thus the results cannot be as accurate as the nearest candidate calculation. Users should be aware that the Radar serves as an illustrative tool that provides an overview of the candidates and their views.

Political Landscape

The political landscape is based on similar assumptions as the radar, but goes a step further. Namely, while the radar represents the political spectrum in five different dimensions, the political landscape even further reduces the complexity of politics and offers only two major dimensions: economic liberal vs. economic conservative and social liberal vs. social conservative.

Both of these dimensions range from zero to one hundred. In order to determine the position of candidates and users in this two-dimensional space, we need to calculate their respective coordinates on the X and Y axes.

The initial position of candidate on an axis is 50% (neutral). Position on an axis is calculated over all statements using formula:

where paramPolarityOfQuestion(i) can have values 1 and -1. Statements with polarity 0 are not included in a radar dimension calculation. 1 shifts the position on an axis to positive and -1 to negative side.