October 11 Update: The zero files for ‘unofficialresult.json’ and ‘unofficialresult-wardbyward.json’ will remain in place until election night, October 22.

Run your tests prior to election day! No technical support will be available October 22.

Any technical questions can be directed to John Meraglia, Manager, Election Services, john.meraglia@toronto.ca or Media Relations, media@toronto.ca

Information for technical or production staff of the media outlets who plan to download and access election results on election night.

The presentation below highlights how media representatives can access election night results in a machine-readable format for their web sites and broadcasts.

Remember to:

  • Check the ‘Live Results Information for Media’ tile regularly for any new information.
  • If the files become unavailable on election night, critical messages will be posted on these pages
  • Test prior to election day! No technical support will be available October 22, election night


image of the cover page of media technical briefing presentation
How to access live results link on election night

Quick Access for Experienced Users:

Election Results files will be available in a machine readable JSON file format.

Three election night results files are available:


The filenames are given as “unofficialresult.json” and “unofficialresult-wardbyward.json”.  Can you confirm that the filename will be the same on the night of the election?  We just want to be sure they won’t be changing to “officialresult” or something like that.  And once the results are complete, will there be a final data file with official results?


The filenames will not change on election night.


The JSON files are being stored in AWS, is there any caching on those files and how long is the cache set for?  Do we need to apply a cache buster or something?


AWS will refresh the files every 60 seconds for both JSON files. You will need to address any caching scenarios based on how you build your consuming solution. For your consideration, both JSON files have a “seq” attribute where the value is based on a timestamp.


For October 9th, there will still be a live test from 8 p.m. – 9 p.m.  After that test, I assume the files will still be available but just with zeroed data until election night?


Files will be zeroed out at the end of the test.


We have a workaround, but it seems the CORS policy on the data files doesn’t allow them to be accessed by other domains.  Will you be updating the cross domain policy?


It is not recommended to make direct AJAX calls to mediaresults.toronto.ca from another domain. The intent is to download the results file, parse it and setup/host your own website or television crawl.


Will the election results be available at the exact same URL for both testing and election night (https://mediaresults.toronto.ca/results/unofficialresult.json)?




Does the candidate field reorganize itself based on votes received or does it stay in alphabetical order?


It will reorganize based on total votes received. If two or more candidates have the same number of votes, those will organize based on name.


Are the total number of polls and total voters values in that feed accurate? In other words can we pre-populate our system with these values now with the values in the feed or will these values change as we get closer to election day?

For example, your feed has the total number of polls for the Mayor race at 1,800 and the total voters at 1,824,420 as you can see from this snippet of your json:


  “electionDesc” : “2018 Municipal Election (25 Wards)”,

  “office” : [ {

    “id” : 1,

    “name” : “Mayor”,

    “ward” : [ {

      “name” : “City-wide”,

      “num” : “0”,

      “polls” : “1800”,

      “pollsReceived” : “5”,

      “totalVoters” : “1824420”,

      “votesReceived” : “1572”,


Both values are subject to change as we approach election day.