A Field Guide to the Open Data Files
Key takeaways
Three CSV files are published: a tax table with 13 rows, a provincial rules table with 95 rows and a city bylaw table with 19 rows. Money is in Canadian dollars, dates are year-month-day, and a blank cell means we could not confirm a figure. Ten of the 13 tax rows are verified; New Brunswick, Yukon and Nunavut are not.
Each file is a flat table you can open in a spreadsheet or load into a script. This guide goes through every column, states the unit, and says where the numbers come from. The files themselves are listed on the open data page, and the browsable version of the city file is the rules-by-city database.
What are the three files?
| File | Rows | One row is | Updated |
|---|---|---|---|
| tobacco-tax-per-carton.csv | 13 | one province or territory | tax rates as of 27 October 2026 |
| provincial-rules.csv | 95 | one rule topic in one jurisdiction | all rows retrieved 2026-10-27 |
| city-rules.csv | 19 | one bylaw topic in one city | all rows retrieved 2026-10-27 |
All three carry a header row, so the first line of each is column names. If a spreadsheet shows odd characters in the first header, import as UTF-8.
tobacco-tax-per-carton.csv: columns and units
| Column | Unit and format | Source |
|---|---|---|
jurisdiction | text | not applicable |
provincial_tax_per_cigarette_cad | Canadian dollars per cigarette, three to five decimals (0.325, 0.18475) | provincial finance or tax page named in source_url |
provincial_tax_per_carton_200_cad | Canadian dollars per 200 cigarettes | provincial rate multiplied by 200 |
in_effect_since | date, YYYY-MM-DD | the date the provincial source gives; blank when the source does not |
federal_excise_per_carton_200_cad | Canadian dollars per 200 stamped cigarettes | Canada Revenue Agency |
combined_per_carton_200_cad | Canadian dollars | provincial plus federal |
status | verified or unverified | our check |
source_url | link | the provincial page |
The federal figure is the same in every row: $38.92. The Canada Revenue Agency publishes federal excise duty on stamped cigarettes as $0.97299 per 5 cigarettes or fraction from 1 April 2026, and 40 units of 5 make a carton of 200, which gives $38.92. Because it is derived this way, the cent-level figure is a calculation from the agency’s rate.
Ten of the 13 rows are verified. New Brunswick, Yukon and Nunavut are unverified, and their price columns are empty. Prince Edward Island is verified but has no in_effect_since date because its source does not give one. The combined figure leaves out sales tax and the retailer’s margin, so it is not a shelf price; read tobacco tax rates in Canada for that.
provincial-rules.csv: columns and topic codes
| Column | Meaning |
|---|---|
jurisdiction | province or territory; 10 of 13 are present (Quebec, New Brunswick and Prince Edward Island are not yet in this file) |
topic | a code, see below |
statement | our plain-English summary of what the source says |
source_url | the law, regulation or government page |
retrieved | date we read it, YYYY-MM-DD |
Topic codes in use: min_age_tobacco, min_age_vape, main_acts, indoor_public_places, vaping_in_smoke_free_places, playgrounds_sportsfields_schools, vehicles_with_minors, vape_flavour_rules, retail_rules, tenancy, patios, door_distance and quit_line. Ages are in years: the Ontario row, for example, records that selling or supplying tobacco to anyone younger than 19 is prohibited, citing the Ontario government page on selling tobacco and vapour products. Distances are not standardized across rows. They sit inside statement text, so search the statement rather than expecting a numeric column.
Counts differ by topic because jurisdictions publish different things: min_age_vape has 10 rows, door_distance only 5. A missing topic means we have not confirmed it, not that no rule exists.
city-rules.csv: columns
| Column | Meaning |
|---|---|
city, province | municipality and two-letter code |
topic | one of Parks and beaches, Doorways, Fines, Patios, Transit, Hookah |
statement | what the bylaw requires; distances are in metres in the text |
bylaw | chapter or by-law number |
source_url | the city page or by-law |
retrieved | date read |
Toronto’s parks row, for instance, says smoking and vaping are prohibited within 20 metres of sports fields, playgrounds and other listed park facilities, and cites the City of Toronto’s parks bylaw enforcement page. Cities that appear are Toronto, Calgary, Edmonton and Saskatoon; other municipalities are not yet in the file.
How should I handle blanks, dates and verification?
- A blank is not zero. Drop or flag blanks before you average or rank anything.
- Treat
retrievedas the date of the check, andin_effect_sinceas the date the rate began. Neither is a promise the figure still holds today. - Filter
statustoverifiedbefore you publish a ranking of provinces. - Quote the source page, not our file, when a figure drives a decision. The methodology page explains how each fact is checked before it is published.
How do I cite the files?
Use the wording on how to cite us: credit Smoke Atlas, link to this page or the page the figure comes from, and say if you changed the data. For survey-based figures, which are not in these files, see smoking statistics in Canada.
Frequently asked questions
What does a blank cell in the tax file mean?
It means we could not confirm that figure on an official page. The status column then reads unverified. New Brunswick, Yukon and Nunavut are blank in the current file.
How is the combined carton figure calculated?
It is the provincial tax per 200-cigarette carton plus federal excise of $38.92, the rate from 1 April 2026. It excludes sales tax and retail margin.
What encoding and format are the files?
UTF-8 with a header row, comma-separated. Currency is Canadian dollars and dates are written year-month-day, for example 2026-10-27.
Can I use the files in a story or study?
Yes, with credit to Smoke Atlas and a link to the page the figure comes from. Quote the retrieved or in_effect_since date rather than calling a figure current.
Sources
- Excise duty rates — Canada Revenue Agency. Accessed October 27, 2026.
- Rules for selling tobacco and vapour products — Government of Ontario. Accessed October 27, 2026.
- Parks bylaw enforcement — City of Toronto. Accessed October 27, 2026.