Source talent from anywhere

Time in.
Invoices out.
Nothing lost between.

HR-LY is the time and billing platform for project firms. Vetted talent logs hours against real projects, managers approve a fixed snapshot, and approved hours become invoices that reconcile to the minute.

Full feature trial
14 days
Hours bill once
1×
Silent rewrites
0

This quarter

+18.4%

$412,800

Approved 1,284 hUnbilled 36.5 h

One loop · three records

Built so they cannot disagree

Revenue vs delivery cost

RevenueCost
0255075100W1W3W5W7W9W11

Hover the chart, or focus it and use ← →, to read a week.

Revenue and delivery cost by week, thousands of dollars
WeekRevenueCost
W13824
W24427
W34126
W45230
W55833
W65531
W76635
W87238
W96936
W108141
W118844
W129647
Billable approved hours only · cost counts every hour

Revenue

$96.0k

+9.1%

Gross margin

51.0%

+2.4pt

Billable share

78%

−1.2pt

Unbilled

36.5 h

ready to bill

01

Time entry

Hours, task, rate recorded together. Draft weeks are editable; submitted ones are not.

02

Approval

A state machine with an append-only event. Rejection requires a reason the member can act on.

03

Invoice

Only approved, unstamped entries. Stamped in the same transaction, so nothing bills twice.

Why it reconciles

Three records, one direction of truth

Every dispute we have seen came from two of these disagreeing. Here they are computed from one another, in order, inside the database.

  1. Capture time where the work happens

    A weekly sheet against real projects and tasks, with billable and internal hours separated at the point of entry. The rate is recorded with the hour, not looked up later.

  2. Approve a snapshot, not a moving target

    Managers see submitted weeks and approve them as a fixed set. Approval is a state change with an event attached, so the history is a record rather than a reconstruction.

  3. Bill approved hours exactly once

    Invoices draw only from approved, unbilled entries, and stamping them happens in the same transaction. Two people invoicing at once cannot both win.

Who it is for

Four views of the same week

Same data, different permissions. Nobody sees a number they cannot act on — and nobody can change one they do not own.

01

Owner

Sees the whole picture

Revenue, margin, unbilled time and who is over budget — plus the subscription, team and billing settings nobody else can touch.

02

Manager

Approves the week

Reviews submitted time, rejects with a reason, and staffs projects. Cannot change an approved entry, which is the point.

03

Member

Logs the work

One weekly sheet, the projects they are staffed on, and their own utilisation. Drafts stay editable; submitted weeks do not.

04

Finance

Bills it once

Approved unbilled time becomes an invoice, with the general ledger and payroll exports taken from issued documents only.

The honest comparison

A spreadsheet is a document. This is a model.

You are not buying cells. You are buying refusals: the sheet cannot submit an impossible week, the rate cannot change retroactively, and an hour cannot be billed twice.

What you needSheetHR-LY
Refuses an impossible timesheet—✓
Rate recorded with the hour—✓
Approval is a rule, not a colour—✓
Proves which hours were invoiced—✓
One revenue number everywhere—✓
Audit history in the same transaction—✓
Every row above is enforced by the server, not the interface.

Built for auditors, not demos

Four properties of the system, not promises

Permissions

Every write resolves identity, organisation, capability and subscription before touching a row.

Tokens

Invitations and resets store only a hash. A leaked database does not hand out accounts.

History

Status changes write an event in the same transaction as the change, so nothing moves silently.

Sessions

Database-backed, revocable, and never trusted from the client for authorisation decisions.

Pricing

Per seat, per month

Fourteen days of the full product first. No card, no cut-down tier, no surprise at the invoice.

Starter

A small team finding its rhythm.

$12/user/mo

  • Up to 10 seats
  • Time and approvals
  • Reports
Start free
Most chosen

Professional

Firms running many client projects.

$29/user/mo

  • Up to 100 seats
  • Invoicing and budgets
  • Exports and analytics
Start free

Enterprise

Delivery organisations at scale.

$59/user/mo

  • Unlimited seats
  • SSO and API access
  • Priority support
Start free

Questions we get asked

Still unsure? The contact page reaches a person, not a form robot.

Ask us anything
Do we need a domain to start?

No. HR-LY runs on localhost during evaluation and on any HTTPS domain in production. If you want to try Google sign-in, the redirect URI is the only thing that has to match.

What happens when a rate changes mid-project?

Nothing to existing hours. Each entry carries the rate in force when it was written, so a new rate applies to new work only.

Can people edit their timesheet after approval?

No. Approved time is immutable; a correction is a new entry with its own approval. That is what keeps an invoice defensible months later.

How is this different from a spreadsheet?

A spreadsheet has no model. It cannot refuse a write, snapshot a rate or prove which hours were billed. HR-LY makes the three records that matter agree.

Try the loop

Put the hours and the invoice on the same page

No card requiredFull feature trialNorthwindGlobexInitech