Practice Log Report (Minutes, Streaks & Tempo Progress)
Turn a practice log into minutes per week, a 12-week heatmap, streaks and tempo progress per piece.
How it works
Paste a practice log as CSV (date, minutes, piece, tempo, target) or the journal file exported from the Tonegrid app, and get your total and weekly practice time, active days and streak, a calendar heatmap, and for every piece the tempo you started at, the latest and best tempo and how close you are to the target.
- Sessions on or before the report date within the chosen number of whole weeks (Monday to Sunday, the last week contains the report date) are counted. Minutes per day are summed; the heatmap shades a day by 1–24, 25–74, 75–149 or 150 and more minutes (the scale of Focus Room’s session log).
- The streak counts consecutive days with practice ending on the report date, or on the day before when the report date has no session yet. Tempo progress uses the sessions with a tempo: first, latest and best tempo, and the latest tempo as a percentage of the piece’s target.
Your log is only used for this report and is not stored.
Sources
Part of Tonegrid
-
Tonegrid Tone matrix & beat sequencer
Light up squares to build melodies, beats and acid bass, then arrange them into songs.
Related tools
- Tempo Ramp Planner (Speed Trainer) – Plan a speed-building ramp: +N BPM every M bars up to your goal, as a table and click track.
- Click Track Maker (Metronome WAV & MIDI) – Turn a song map with tempo and meter changes into a metronome click track as WAV and MIDI.
How to use the Practice Log Report
Turn a practice log into totals, minutes per week, a calendar heatmap, streaks and the tempo progress of every piece towards its target.
What it is for
Writing down what you practised, for how long and at what tempo is one of the simplest habits that keeps musicians improving. A list of dates and minutes alone is hard to read, though. The Practice Log Report turns it into the picture you want: how much you practised this week and over the last weeks, on how many days, how long your current streak is, and for every piece how far the tempo has come towards your goal.
Paste a CSV with a header row — at least date and minutes, optionally piece, bpm, target_bpm and note — or the journal file exported from the practice journal in Tonegrid's Practice view. The app shows the same report from the same engine. Your log is only used for this report and not stored.
Worked example
The first example is a five-week piano log with two pieces, Bach Prelude in C (target 96 BPM) and Scales (target 120 BPM). The report says: "6 h 0 min of practice in 13 sessions over the last 12 weeks up to 2026-11-08, on 13 days; current streak 1 day." This week has 100 minutes and the average practice day 27.7 minutes.
In the pieces table the prelude has 235 minutes in 7 sessions, from a first tempo of 72 to a latest and best of 92 BPM: 95.8 % of the target. Scales went from 100 to 116 BPM, 96.7 % of 120. The weekly bars read 90, 55, 65, 50 and 100 minutes for the last five weeks.
A shorter study log with an étude and some sight-reading —
date,minutes,piece,bpm,target_bpm
2026-05-04,30,Etude 7,60,84
2026-05-05,25,Etude 7,62,
2026-05-06,30,Etude 7,64,
2026-05-07,20,Sight-reading,,
2026-05-11,35,Etude 7,68,
2026-05-12,30,Etude 7,70,
— over 4 weeks gives 2 h 50 min in 6 sessions, a streak of 2 days, and the étude at 70 BPM, 83.3 % of its target of 84. Sight-reading has minutes but no tempo, so its tempo columns stay empty.
How to read the result
- Practice time, This week, Days with practice, Streak and Average per practice day cover the chosen weeks up to the report date.
- The heatmap shades each day by 1–24, 25–74, 75–149 and 150 or more minutes; the bars beside it show the minutes per week.
- The Pieces table gives minutes, sessions and the first, latest and best tempo. Progress is the latest tempo as a percentage of the target.
- The tempo chart draws one line per piece, with the target as a dashed line.
Tips and common mistakes
- Dates must be written as
2026-11-08. Semicolon- and tab-separated files work as well as commas. - The target belongs to the piece: write it once in any row, the last one wins.
- Leave Report date empty to end the report on the latest session, or set it to see an earlier period.
- The streak counts back from the report date; a report date without a session still counts the days before it.
- Weeks run from Monday to Sunday, so a report on a Wednesday shows a short current week.
FAQ
Where does the log come from?
From any spreadsheet, or from the Tonegrid practice journal: Export CSV or Save journal file there, then paste the content here.
Why is a piece missing from the table?
Only sessions inside the chosen weeks count. Pick more weeks or a later report date.
Does it judge how well I practised?
No. It counts minutes and tempos; the quality of the practice is up to you.
Guide last updated:
For scripts and AI agents
- JSON API:
POST https://tonegridpracticereport.usefulweb.app/api/v1/calculate(same calculation as this page) - Interface description: OpenAPI 3.1 · AI guide: llms.txt
- MCP server (Streamable HTTP):
https://tonegridpracticereport.usefulweb.app/mcp· tool nametonegrid_practice_report
Example request
curl -s -X POST https://tonegridpracticereport.usefulweb.app/api/v1/calculate \
-H 'content-type: application/json' \
-d '{"journal":"date,minutes,piece,bpm,target_bpm,note\n2026-10-05,25,Bach Prelude in C,72,96,hands separately\n2026-10-06,20,Scales,100,120,\n2026-10-08,30,Bach Prelude in C,76,96,\n2026-10-11,15,Scales,104,120,\n2026-10-13,35,Bach Prelude in C,80,96,left hand cleaner\n2026-10-17,20,Scales,108,120,\n2026-10-20,40,Bach Prelude in C,84,96,\n2026-10-22,25,Scales,112,120,\n2026-10-27,30,Bach Prelude in C,88,96,\n2026-10-29,20,Scales,112,120,\n2026-11-02,45,Bach Prelude in C,90,96,run-through\n2026-11-04,25,Scales,116,120,\n2026-11-08,30,Bach Prelude in C,92,96,","weeks":12}'