What the ATO accepts as a time record
The ATO says employers must substantiate the time employees spend on eligible R&D, and that timesheets or job cards are the most accurate and effective method. Where timesheets are impractical it accepts a summary sheet if it is as reliable, or a diary for someone whose ratio of R&D work stays fairly constant. Its expenditure guidance adds that salary claims should rest on actual expenditure and records such as time sheets or job cards. It also says records that are backdated or contain non-specific details are not appropriate.
A Jira worklog has most of what a job card needs: a person, a date, a duration and the task. Whether it holds up depends on how it is written and when.
Five habits for usable worklogs
- Log on the day. The worklog date should be the day the work happened, entered that day or soon after. Month-end catch-up logging looks backdated even when it is honest.
- Log against the experiment, not the epic. Put time on the story, task or spike that holds the hypothesis. An epic usually spans several pieces of work, so time logged there takes more explaining to tie to one experiment, and Rand screens epics out as planning containers.
- Let the issue say what was done. A worklog records time; the issue's description and comments record the work. "Ran variant B against the 10M set, recall 0.87" belongs on the issue.
- Let each person log their own time where you can. The ATO does not require self-entry, but the record must show whose time it was. Shared or service accounts lose that link, and Rand counts a worklog for the account that logged it.
- Log ordinary work too. Support tickets, meetings and routine fixes logged alongside R&D show the whole day and keep the R&D share honest.
Good and weak worklogs (illustrative)
These entries are illustrative.
| Weak | Stronger |
|---|---|
| 40 hours on epic "Search v2", logged 30 June | 3h on spike ENG-118 "Two-stage retrieval recall test", logged 12 March |
| 8h on "Misc dev" every Friday | 2h on ENG-121 "Benchmark learned quantisation", plus 1h on SUP-77 "Customer export bug" |
| A team lead logs the whole team's week under their own account | Each engineer logs their own time on the day |
| Time logged on a public holiday with no note | A day worked on a public holiday, recorded as a day worked |
| Issue description empty, worklog comment "work" | Issue states the hypothesis; comments record each run and result |
What Rand does with worklogs
If you connect Jira, Rand reads the complete worklog ledger for each issue with work in the claim year. For each entry it keeps the author, when the work started and how long it took. It does not keep the worklog comment, so the issue itself needs to say what was done.
Rand's default method estimates R&D time from active days, but worklogs are the one source it treats as tracked time: counted as logged, on the date the entry gives for the work rather than the day it was typed in, as R&D or ordinary work depending on the decision about the issue. Some entries become notices instead of hours:
- Time logged by a Jira account not yet matched to an employee counts once the account is matched.
- Time logged on a day outside the person's working days is shown but not counted, unless someone records that they worked that day.
- A day with more logged time than the person's available hours is held to that day's hours and flagged.
- Time logged on an epic counts as ordinary work, not R&D, because Rand screens epics out as planning containers.
Logged time is never trimmed to a monthly ceiling. A month above 80% R&D is flagged for the director, who checks it before signing the year's hours with the time allocation schedule. Those signed hours, applied to payroll from Xero, become personnel cost.
For the engineering side of the same experiment, see pull requests as R&D experiment records. The contemporaneous evidence glossary entry and R&D Tax Incentive resources cover the wider rules.
The record keeping requirements guide covers time records alongside other evidence, and what R&D expenditure you can claim explains how hours become salary costs.