Stop 13 · Version Control, Git & CollaborationTopics · 6/7

Scheduling & Automating Reports

Part of the Data Analyst Roadmap

In short

If you copy-paste the same report every Monday, you're doing a machine's job. Automating it frees your Mondays for actual thinking, and the report never forgets to show up.

Setting up recurring queries, refreshes or emailed reports so routine analysis doesn't require you to manually rerun it every week — freeing time for higher-value ad-hoc work.

The jaadu on a bicycle with milk cans places a milk packet at a front door at sunrise.

Think of it like this

The milkman at 6 am

The milkman doesn't wait for you to call. Every morning at 6, the packet is at your door, rain or shine. A scheduled report works the same: same time, same place, every day, without anyone pressing a button.

Watch it happen

A daily sales report that runs itself

7:00 trigger
Run query
Refresh
Check
Send

1/5At 7 am on weekdays, a scheduler wakes up the job. No human needed.

The big ideas

What you need to know

Many tools can schedule

Scheduled queries in BigQuery, dashboard refresh schedules, Apps Script triggers, cron jobs or tools like Airflow.

Automate what repeats

If a report is built the same way more than twice, it's a candidate for automation.

Add sanity checks

An automated report that silently sends wrong numbers is worse than a late one. Check row counts and totals.

Alert on failure

Make sure someone hears about it when a job fails, so nobody trusts yesterday's stale data.

See it in code

A tiny example

bash
1# min hour day month weekday  command20 7 * * 1-5  cd /home/me/reports && python3 daily_sales.py >> logs/daily.log 2>&1

A cron line that runs a Python report script at 7:00 every Monday to Friday and saves its output to a log file.

Save yourself the pain

Common mistakes

Oops

Automating a report nobody has looked at in months.

Do this instead

Before automating, ask who uses it and for what. Retire reports that nobody reads.

Oops

Scheduling a job and never checking if it ran.

Do this instead

Log every run, add basic checks and send yourself an alert when something fails.

Your mission

Automate a tiny report

~35 min

Quick check

An automated report emails the team every morning. What's the most important thing to add?

Go deeper

  1. 1Automate one recurring report you currently build manually, using any tool available to you.
  2. 2Learn the basics of a scheduler (cron, or your BI tool's built-in scheduling).
  3. 3Set up an alert for when an automated report fails, not just when it succeeds.

More topics at this stop

Stuck on this topic? Ask an Insider

Get 1:1 guidance from people who've walked this exact path — on the InsideEdge app.

Download
InsideEdge