{{ greeting }}, {{ firstName }}

{{ dateLabel }}

This week

{{ weekDone }}/ {{ weekTotal }} done

Volume

{{ week ? week.totalDuration : '0h 0m' }}

Done and still planned

Distance

{{ week ? week.totalDistanceKm : 0 }}km

{{ week ? week.totalTss : 0 }} TSS on the week

Form

{{ form.tsb }}{{ form.label }}

Fitness {{ form.ctl }} · Fatigue {{ form.atl }}

—

Builds as you log workouts

Loading...

Loading your training…

{{ workout && workout.sessions && workout.sessions.length > 1 ? 'Today\'s training' : 'Today\'s workout' }}

{{ !workout ? 'Nothing on the plan' : workout.sessions && workout.sessions.length > 1 ? workout.sessions.length + ' sessions, in order' : workout.completed ? 'Done — nice work' : 'On the plan for today' }} · synced from TrainingPeaks

Completed

Rest day

Plan a session or sync a device to see it here.

Plan a workout

{{ workout.title }}

{{ [workout.duration_label || workout.duration, workout.distance ? workout.distance + ' km' : '', workout.strength ? workout.strength.sets + ' sets · ' + workout.strength.exercises + ' exercises' : '', workout.tss ? Number(workout.tss) + ' TSS' : ''].filter(Boolean).join(' · ') }}

{{ workout.description }}

From your coach: {{ workout.coach_note }}

  1. {{ bi + 1 }}

    Repeat {{ block.repeat }}× · {{ block.total }} in all

    {{ step.name }} {{ [step.duration || step.distance, step.target].filter(Boolean).join(' @ ') }}
{{ workout.strength.done }} of {{ workout.strength.sets }} sets

{{ block.label }} · {{ block.heading }}

{{ block.notes }}

{{ row.label }}

{{ row.title }} Video

{{ row.notes }}

{{ row.sets }}

{{ completeError }}

{{ fitError }}

Planned {{ workout.strength ? [workout.duration_label, workout.strength.sets + ' sets'].filter(Boolean).join(' · ') : (workout.duration_label || workout.planned.duration) }} · {{ Number(workout.planned.tss) }} TSS · IF {{ Number(workout.planned.if).toFixed(2) }} Calendar

Your classes

{{ upcomingBookings.length ? upcomingBookings.length + ' booked' : 'Nothing booked yet' }}

Full schedule
{{ gymNotice }}

{{ booking.session_name }}

{{ prettyDate(booking.session_date) }} · {{ prettyTime(booking.start_time) }}

{{ booking.status === 'waitlisted' ? 'Waitlist' : 'Booked' }}

Open spots

{{ session.name }}

{{ prettyDate(session.session_date) }} · {{ prettyTime(session.start_time) }}

No classes on the timetable for the next two weeks.

Your athletes are in the coach workspace

This page shows your own training and classes. Add an athlete profile in Settings if you train here too.

Welcome to HQ.training

Join a gym or connect with a coach and your classes and training land here.