> ## Documentation Index
> Fetch the complete documentation index at: https://docs.uplifter-curling.com/llms.txt
> Use this file to discover all available pages before exploring further.

# How do I approve volunteer hours?

> Review the hours members log, grant hours directly, and find each member's season total.

<Note>
  **Must know**

  * Hours a member logs land as **Pending**; only **approved** hours count toward the minimum-hours rule and the member's total.
  * Hours credited from a shift (**Worked**) or added with **Grant hours** are approved immediately.
  * The admin page shows individual entries, not per-member totals. Members see their own season total; for a club-wide total use the **Volunteer Hours** club report.
</Note>

<Steps>
  <Step title="Open the queue">
    Go to **Members → Volunteers** and click **Hours** — the tab shows the pending count, for example **Hours (4 pending)**.
  </Step>

  <Step title="Approve or reject">
    Each row shows **Member**, **Hours**, **Worked on** (with the event and task the member picked, when they picked one), **Source**, **Status** and a **Review** column with **Approve** and **Reject**. Reject is also how you reverse approved hours: a member can delete only their own pending entries.
  </Step>

  <Step title="Grant hours yourself">
    Click **Grant hours** to add an approved entry directly: pick the member, enter **Hours**, **Worked on** and a **Note**. Use this for work done outside a posted shift.
  </Step>
</Steps>

On the member side, **My Time Tracking** → **Log hours** asks for **Hours**, **Date**, **Event** (the role, or **No specific role**), a **Task** when the event has shifts, and **What did you do?**; the toast reads "Hours submitted for approval". The page then shows "\{x}h approved (+\{y}h pending)" for the season and, when the club has a minimum, "\{n}h short of \{m}h minimum" or "\{m}h minimum met".

Exports: **Reports → Club reports → Volunteer Reports → Volunteer Hours** (CSV or Excel; needs the Reports feature and either *volunteers.view* or *financials.view*, so the Volunteer Coordinator can run it).

**Related:** [What is the minimum-hours renewal gate?](/club/volunteers/what-is-the-minimum-hours-renewal-gate) · [How do I post a volunteer shift?](/club/volunteers/how-do-i-post-a-volunteer-shift) · [How do I run and export a club report?](/club/reports/how-do-i-run-and-export-a-club-report)


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.