How to Track Time in Redmine Using the Redmineflux Timesheet Plugin

Table of Contents

Redmine has built-in time logging. Users can log hours against any issue. But native time logging is not the same as time tracking — there are no consolidated timesheet views, no approval workflows, no billing rates, and no reporting by project or client. This guide covers what Redmine’s default setup provides, where it stops, and how the Redmineflux Timesheet Plugin completes the time tracking workflow.

What Redmine’s Default Time Logging Provides

What Redmine Does by Default

Redmine’s core time logging is simple and functional. Teams can log hours directly against any issue. Each entry accepts an hour value, an activity type, and a comment.

Redmine natively supports:

  • Logging time against individual issues with a date and activity type
  • Viewing all time entries in a flat, filterable list
  • Basic time reports filtered by project, user, or date range
  • Role-based permission control for who can log and view time

This gives teams a basic record of hours worked. It is sufficient for teams that only need to know time was logged.

What Redmine Does Not Provide

The gap becomes clear when teams move from informal logging to structured time governance. Redmine’s default setup stops well short of what billing-focused or compliance-conscious teams need.

What is missing from Redmine out of the box:

  • No consolidated per-person timesheet view across projects
  • No weekly or monthly timesheet submission interface
  • No manager approval workflow for submitted timesheets
  • No billing rates — standard, overtime, or role-based
  • No billable versus non-billable classification for time entries
  • No client-facing time report export formatted for invoicing
  • No budget versus actual comparison at project or user level
  • No time entry locking after a billing period closes
  • No submission deadline reminders for outstanding timesheet entries

These are not edge-case requirements. They are standard needs for any team billing clients from Redmine data.

What Is the Redmineflux Timesheet Plugin?

Answer capsule: The Redmineflux Timesheet Plugin adds consolidated timesheet views, manager approval workflows, billing rate management, billable and non-billable categorisation, and time reporting to Redmine. It works on top of Redmine’s native time log entries — no duplicate data entry. Compatible with Redmine 5.0.x, 5.1.x, and 6.0.x.

The Timesheet Plugin is not a replacement for Redmine’s time logging. It is a structured governance layer built on top of it. The same time entries your team logs against issues become the source of record for approvals, billing, and reporting.

Teams using the plugin do not change how they log time day to day. They gain a structured layer around that data — approval workflows, billing classifications, consolidated views, and exportable reports — that turns informal entries into a reliable, auditable record.

This matters most for service teams, consultancies, and internal delivery functions. These teams need time data that finance can trust, clients can review, and audits can verify.

Key Capabilities of the Timesheet Plugin

Consolidated Timesheet View

Redmine’s default time log shows entries in a flat list. That list does not show you what a single team member worked on across all their projects in a given week.

The Timesheet Plugin changes this with a per-person weekly and monthly timesheet view. All hours logged by a user are visible in one structured interface. Managers can review what was worked on without navigating project by project. Team members see their own timesheet clearly before submitting for approval.

This single change removes a significant amount of manual effort from weekly time review.

Timesheet Submission and Approval Workflow

Unreviewed time entries have no real audit value. The plugin introduces a defined approval workflow that closes this gap.

Team members review their logged entries and submit a completed timesheet for manager review. Managers approve or reject each submission, with the option to add a rejection comment explaining what needs correction. The submitter can then revise and resubmit without leaving Redmine.

Every submission and approval is timestamped and tied to a named user. This creates an auditable record of approved hours. That record is directly useful for client billing, compliance, and internal cost reporting.

Billing Rates

Most Redmine environments have no mechanism for distinguishing billable from non-billable time. The Timesheet Plugin adds this capability in two parts.

First, administrators can set billing rates per user or per role. Standard rates, overtime rates, and role-specific rates are all supported. Second, each time entry can be classified as billable or non-billable when it is logged or reviewed.

This gives agencies and service teams a structured path from logged hours to invoice amounts. Finance teams can run billing reports from approved, classified time data rather than reconstructing hours from spreadsheets.

Time Reports

Reports built from unvalidated time data are unreliable. The Timesheet Plugin generates reports from approved entries only.

Filters are flexible. Reports can be scoped by project, team member, date range, activity type, or billing status. Export options include CSV and PDF. Project managers use these reports for effort distribution reviews. Finance teams use them to generate client invoices directly from logged and approved hours.

This removes the need for a separate billing or reporting tool for time data that already lives in Redmine.

Integration with Redmine Issues

The Timesheet Plugin does not create a parallel data model. It reads the same time entries already linked to Redmine issues.

This matters for data integrity. An entry logged on a specific issue remains associated with that issue. It also appears in the timesheet view for that user, feeds into approval workflows, and shows up in filtered reports. There is no duplicate entry and no data migration.

From the timesheet view, managers can drill down into the specific issue or project associated with any entry. Time data and issue data stay connected throughout the workflow.

How to Set Up the Timesheet Plugin in Redmine

Step 1 — Install the Plugin

Upload the plugin folder to your Redmine installation directory. The standard path is Redmine/plugins/timesheet.

Once uploaded, run the following commands from your Redmine root:Step 2 — Configure Plugin-Level Settings

Go to Administration → Plugins → Timesheet → Configure.

Set your billing rate defaults for the instance. Configure the approval workflow — enable or disable it based on your team’s process requirements. Set which activity types are classified as billable by default. These settings apply across all projects that enable the Timesheet module.

Step 3 — Enable Timesheet for a Project

The plugin must be activated per project. Go to Project → Settings → Modules tab → Enable Timesheet → Save.

Once enabled, the Timesheet tab appears in the project navigation. Team members assigned to the project can access their timesheet view. Project managers can access approval queues and reports for that project.

Step 4 — Set Up Billing Rates Per User or Role

Go to Administration → Timesheet → Billing Rates.

Assign standard hourly rates per user or per role. If your team uses overtime rates for specific conditions, configure those here as well. Role-based rates are useful for teams where billing differs by seniority or function rather than by individual.

Step 5 — Submit and Approve Timesheets

For team members: Go to Timesheet → My Timesheet → Select week → Review entries → Submit

Review logged entries for the selected period. Confirm accuracy before submitting. Once submitted, the timesheet moves to the manager’s approval queue.

For managers: Go to Timesheet → Approvals → Review submitted timesheets → Approve or Reject

Approve entries that are correct. Reject entries that need revision, with a comment explaining the required change. Rejected timesheets return to the submitter for correction and resubmission.

Step 6 — Generate Time Reports

Go to Timesheet → Reports.

Apply filters for the report scope: project, user, date range, activity type, or billable status. Review the results in the interface or export to CSV or PDF. Use CSV exports for finance team invoicing workflows. Use PDF exports for client-facing time reporting or internal management reviews.

Who Gets the Most Value from the Timesheet Plugin

Project Managers

Project managers gain clear visibility into how team effort distributes across issues and projects. They can compare logged hours against original estimates within Redmine. Approval workflows run inside the platform, so there is no chasing approvals across email.

Engineering Leads

Engineering leads can review each developer’s weekly hours across all active projects from a single view. This makes it easy to spot overload or underutilisation before it affects delivery timelines. No separate reporting tool is needed.

Finance and Billing Teams

Finance teams can generate accurate client invoices directly from approved, billable time entries. The data is already structured, classified, and validated. Teams no longer need a separate time tracking tool running alongside Redmine.

IT Directors

IT directors can enforce consistent timesheet submission standards across all projects. Every approved timesheet creates an auditable record with timestamps and named approvers. This audit trail is available for export and supports both internal governance and client-facing compliance requirements.

How the Timesheet Plugin Connects with Other Redmineflux Plugins

The Timesheet Plugin works within the same Redmine project structure as the rest of the Redmineflux suite. Three integrations deliver particularly clear operational value.

  • Timesheet entries link to sprint issues tracked on the Agile Board Plugin — actual hours feed into sprint review without a separate data step.
  • Approved time data complements the resource loading view in the Workload Plugin — compare planned capacity to actual hours logged across the team.
  • Time logs against project issues feed into timeline views in the Gantt Chart Plugin — effort visibility runs alongside the delivery schedule in one workspace.

Common Questions About Redmine Time Tracking

Does the Timesheet Plugin replace Redmine’s time logging?

No. It builds on top of Redmine’s existing time entries. Your team logs time the same way — the plugin adds structure like timesheets, approvals, and reporting.

Can I track billable vs non-billable time?

Yes. You can classify each entry as billable or non-billable and filter reports accordingly.

Is timesheet approval mandatory?

No. The approval workflow is optional and can be enabled based on your process.

Can I export reports for invoicing?

Yes. Export reports in CSV or PDF for billing and client reporting.

Which Redmine versions are supported?

Redmine 5.0.x, 5.1.x, and 6.0.x.

Redmine’s default time logging is a starting point, not a complete solution. The Redmineflux Timesheet Plugin closes the gap between informal time capture and structured time governance. Teams get consolidated views, approval workflows, billing classifications, and exportable reports — all running inside the Redmine environment they already use. That means accurate billing, reliable reporting, and a clear audit trail without adding another tool to the stack.

View Timesheet Plugin — Full feature details and pricing Get Free Demo — See it running in a live Redmine environment Explore Managed Cloud — Managed Redmine with the Timesheet Plugin pre-configured