For Obsidian users
Time tracking and invoices from your Obsidian task files.
nokko is a native Mac and iPhone app that runs a timer on a task in your Obsidian vault and writes each session as a line under that task. At the end of the month it drafts an invoice from those lines, saved as another Markdown file. We built it because our agency's hours kept ending up in a different app from our tasks.
Each session is a ⏱ line under the task it belongs to.
Start the timer on a task, stop it, and nokko adds a sub-bullet under that task with the date, the start and end times, the duration, and a note if you wrote one. Obsidian shows it as an ordinary list item. Your hours can be read in the file, searched, and versioned with the rest of the vault.
The duration in brackets is there for people reading the file. nokko ignores it and works out every total from the start and end times, so a hand-edited label can never put a wrong figure in a report. A line you type yourself in the same shape counts like any other.
- [x] Homepage hero and the bag grid [est:: 3h] 📅 2026-10-16
- ⏱ 2026-10-13 09:20-10:55 (1h35m) — hero layout
- ⏱ 2026-10-14 14:05-15:20 (1h15m)The timer runs on the Mac, in the menu bar, and on the iPhone Lock Screen.
Start it from the task, from the menu bar, from a desktop widget, or from the iPhone, where it keeps counting on the Lock Screen. There is a Pomodoro if you work that way. If you step away, nokko asks what to do with the idle time instead of logging it. A session you forgot to time can be added by hand afterwards.
The timesheet shows each day's entries with the gaps between them and points out any minutes that two entries both claim. Reports group the hours by client, project and day, and export as CSV or Markdown.

Invoices are drafted from the logged hours and saved as Markdown in the vault.
Pick a period and a client, or narrow it by tag, and nokko builds a worksheet with one line per task, or one per task per day. Each line is priced at the project's own rate if it has one, else the client's, else your default. You can change any line or add a flat fee before anything is written.
The invoice then becomes a Markdown file: the number, dates, currency and VAT in frontmatter, and the lines and totals as tables. It prints or saves as a PDF with your logo, in English, Lithuanian, German, French or Spanish.
nokko is the wrong tool if you need automatic tracking or payment links.
nokko's timer is one you start. It does not watch which apps or websites you use. It drafts and prints invoices, but it does not email them, take card payments or chase late ones, and it does not track expenses.
It also runs beside Obsidian as a Mac app, not as a plugin, so nothing appears inside Obsidian itself. If all you want is a stopwatch in a note, an Obsidian time-tracking plugin is lighter.
What you see in nokko, and what is written in the file.
Everything nokko shows about time and money comes from plain text you can read in Obsidian.
| Capability | In nokko | In the Markdown file |
|---|---|---|
| A timed session | Mac, menu bar, widget, iPhone Lock Screen | A ⏱ line under the task |
| An estimate | Shown against the time logged | [est:: 3h] on the task |
| An hourly rate | Project first, then client, then your default | rate: in frontmatter |
| A client | Unbilled hours and amounts | A file in the Clients folder |
| An invoice | Drafted from the hours, printed to PDF | A Markdown file with tables |
| An invoice number | The next free one, found by reading your invoices | number: INV-2026-007 |
Swipe sideways for the other columns.