Data Journalism Tutorials for UK Journalists
Practical, step-by-step tutorials for UK journalists at every skill level — from your first pivot table to Python, SQL, mapping, and statistical analysis. All examples use real UK public datasets.
Last reviewed: Next review due:
Start here
Data journalism is the practice of finding, cleaning, analysing, and communicating stories from structured data. You do not need to be a programmer. The UK’s best data newsrooms — the Guardian Visuals team, BBC Shared Data Unit, Bureau Local, and the FT Visual Journalismteam — employ journalists with a wide range of technical skills, from spreadsheet specialists to full Python developers.
New to data journalism? Start with Getting Started, then work through Spreadsheet Essentials.
Ready to go further? Jump to SQL for Journalists or Python Pandas. For making your work public, see the Publishing Workflow.
- Getting Started
- Spreadsheet Essentials
- Statistics for Journalists
- UK Statistical Bodies
- Data Storytelling
- Excel vs Sheets vs Airtable
- SQL for Journalists
- Data Cleaning Techniques
- Survey Data Handling
- Data Visualisation Tools
- Mapping UK Data
- Python Pandas for Journalists
- Web Scraping: UK Ethics
- Regression & Correlation Basics
- Data Journalism Publishing Workflow
All 15 Tutorials
Each tutorial includes a plain-English explanation, UK-relevant examples, a practical checklist, common mistakes, primary sources, and FAQs.
Skills, mindset, ethics, and the full data-journalism workflow — question to publish.
Pivot tables, VLOOKUP, SUMIF, conditional formatting — with NHS and council examples.
Pros, cons, cost, collaboration, data-size limits, and when to graduate to a database.
SELECT, WHERE, GROUP BY, JOINs — using Land Registry and Companies House data.
DataFrames, CSV import, groupby, merge, and basic plotting — no coding background needed.
Missing values, date parsing, duplicates, mismatched keys, and OpenRefine for messy datasets.
robots.txt, CDPA 1988, GDPR, rate limiting, and BeautifulSoup basics.
Datawrapper, Flourish, RAWGraphs, Tableau Public — choosing the right tool for your story.
Choropleth maps, UK postcodes, LSOA/MSOA geographies, and the ONS Open Geography Portal.
Mean vs median, percentages vs percentage points, margins of error, and correlation vs causation.
Reading a coefficient, r-squared, scatter plots, and when to call a statistician.
Sample size, weighting, confidence intervals, and reporting YouGov / Ipsos results responsibly.
ONS, NRS Scotland, NISRA, StatsWales, UKSA — datasets, release calendars, and methodology.
Turning numbers into narrative: choosing the angle, charts vs prose, explaining methodology.
Fact-checking numbers, source citation, reproducible analysis, Git, and corrections.
R and RStudio, the tidyverse, dplyr and ggplot2, and reproducible analysis with Quarto.
Beyond spreadsheets: loading CSVs, CTEs, window functions, indexing, and a taste of PostGIS.
A fast in-process database that queries CSV, Parquet and JSON directly — from CLI, Python or R.
Clean messy data: faceting, clustering inconsistent values, GREL transforms, and reproducible steps.
Free desktop GIS: joining data to boundaries, choropleths, honest classification, and export.
Extract features with Overpass Turbo, Geofabrik regional extracts, the ODbL licence, and verification.
ONS Open Geography Portal, GSS codes, combined authorities, the ONSPD, and the LEP wind-down.
Endpoints, JSON, keys and rate limits — with Companies House, TfL, Nomis and police.uk examples.
Useful Tools & Resources
Free tools used daily by UK data journalists.
Frequently Asked Questions
Do I need to know how to code to do data journalism?
Where do UK journalists find data for stories?
What is the best free tool for data visualisation?
How do I check whether my statistics are correct before publication?
Is it legal to scrape data from websites in the UK?
What is the difference between data-driven and data-led journalism?
Related hubs
Unlock data with FOI
When the dataset you need is not published, use our free FOI Request Builder to draft a well-structured request in under two minutes.