Entering values
The Daily Entry screen, the quick entry dialog, backfilling older dates, what happens with two values on one day, and which number formats the field accepts.
Manual KPIs need a number from you. Pulsaria gives you two places to type one: the Daily Entry screen, built for going through several KPIs at once, and a small dialog you can open from any KPI’s detail page or from a row in its history. Both write the same kind of record, and both accept German and English number notation.
The Daily Entry screen
Click Daily Entry in the navigation. The heading reads Daily Entry, the line under it Record today’s KPI measurements. Two controls sit above the list:
| Control | What it does |
|---|---|
| Date | The day your values are written to. Defaults to today. |
| Scope | Which KPIs are listed: All scopes, Company-wide, or one project. Each option carries its KPI count in parentheses. |
The scope starts on Company-wide if you have at least one company-wide KPI, otherwise on the first project that has KPIs. Under the controls sits a summary line for the current scope: To capture today: manual KPIs · auto KPIs. The line names the two groups without counting them — the per-scope KPI count sits in the Scope dropdown instead.
Below that sits the KPI Values card, split into a Manual KPIs section you can type into and an Auto KPIs section you cannot.
Manual KPIs
Each row shows the KPI name and, underneath it, a meta line: the target with its unit, an arrow for the direction, Last value and — sometimes — a trend chip.
- Last value is the newest value ever recorded for that KPI, not the value for the date you picked. Rows never prefill, not even when the selected day already has a value.
- The trend chip is the average of the last 7 recorded values against the 7 before them. It needs at least 14 recorded values; below that the calculation returns zero, so a young KPI shows a grey
0%with a dash. The chip is hidden entirely while a KPI has only one recorded value. - The target and Last value on this screen are printed as raw numbers, without the thousands grouping the Dashboard card applies.
50000 EURhere is the same number as50,000 EURthere.
Type into the field on the right (placeholder Value), then save in one of two ways:
- Click the check button at the end of the row to save that one KPI. The button stays inactive while the field is empty.
- Click Save All Entries at the bottom to save every filled manual row in the current scope at once.
A saved row flashes green with a check for two seconds, and a Saved at 14:32 note appears next to the Save All Entries button. Save All Entries is only rendered when the current scope contains at least one manual KPI.
Save All Entries skips empty rows silently. Filled rows that cannot be read as a number are counted and reported afterwards as 2 values weren’t valid numbers and were skipped — they are not saved. If one save genuinely fails, the run stops at that row, so rows further down stay unsaved.
Auto KPIs
KPIs fed by a Connector, a shell command or an HTTP source appear in a separate greyed section, each with an AUTO badge, the hint These values are fetched automatically — adjust in settings., a Last fetched line derived from the newest successful entry in the fetch log, and the value on the right. There is no input field and no save button here.
The value shown on an auto row is always today’s value, no matter which date the picker is on. Auto KPIs also always write under today’s date when they run. To correct an auto KPI’s value for an earlier day, use the pencil in its History table instead.
When the scope has no KPIs
The card shows No KPIs in this scope yet and, below it, Switch scope or create a KPI in Dashboard. The word Dashboard is a link that opens the Dashboard with the New KPI dialog already open.
The quick entry dialog
The second way in is a small dialog with a single field. It opens from two places:
- KPI detail page → Add value. This button exists for manual KPIs only, and it always writes today’s date.
- KPI detail page → the pencil icon on a row of the History table. This writes that row’s date and prefills the field with that day’s value. The pencil works on automated KPIs too — it is the only way to correct a fetched value for a past day.
The dialog is titled Add value or Edit value. Above the field, a label line names the KPI and the target day: Revenue · Date: 2026-07-25. The date is printed as a raw ISO string here, not in your usual date format. To the right of the field stands the KPI’s unit; at the bottom, Cancel and Save. Pressing Enter saves, Escape closes.
When you edit an existing value, the field is prefilled in machine notation — 2.5, with a dot, even in the German app. Leave it untouched and it saves unchanged. Retype it and it goes through the normal parsing rules below.
Two messages can appear under the field:
- Negative value — is that intended? in amber, live as you type. It is a warning only; negative values save fine.
- Not a valid number in red, after you press Save. An empty or unreadable field blocks the save.
A successful save shows a 1 entry saved toast and refreshes every open view — the Dashboard card for that KPI pulses once when its number changes.
Backfilling an older date
The date field on the Daily Entry screen opens Pulsaria’s own calendar, not the browser’s. Use the ‹ and › arrows to change month and click a day; the popup closes on selection. Today is outlined in cyan, the selected day is filled. The week always starts on Monday, and there is no year jump, no “Today” shortcut and no keyboard navigation inside the grid.
The field has no bounds. Any past date can be selected — and any future date too. A future-dated value becomes the KPI’s newest history point, and therefore its current value and status, the moment you save it.
Three things to know before you backfill a longer stretch:
- The rows do not prefill from the selected date, and Last value keeps showing the newest value overall. The screen gives you no picture of what that older day already holds — the History table on the KPI detail page does.
- Backfilling an older day does not change the KPI’s current value or its status badge. Those always come from the newest recorded date. What it does change is the chart, the History table and that day’s own gap.
- Saving can still raise an alert on the Dashboard. The check compares the value you just saved against the previous entry for that KPI, regardless of how old the date is. See Ideal line & status.
There is also a hard ceiling on how far back the app looks: charts, the status timeline and the History table are built from the 90 most recent dates that carry any entry, counted across all KPIs. Older entries stay on disk and stay in the export, but they are invisible in the app. Values recorded outside the KPI’s period are not plotted at all.
Two values on the same day
Nothing stops you from recording a KPI twice on one day, and nothing is overwritten when you do: every save writes its own file into the entries folder, named by date, KPI and timestamp (see Where your data lives).
For every calculation in the app — current value, status, gap, charts, History table, Weekly Review — the entry with the newest timestamp for that day wins. Earlier entries from the same day are ignored. There is no option to sum, average or otherwise combine them.
Editing a past day works the same way: the edit writes a new record rather than modifying the old one, and wins because it is newer.
When today has more than one entry for a KPI, its detail page lists them above the History table under a heading like Today · 3 entries, each row showing the time of day and the value. That list is read-only — single intraday entries cannot be edited or removed individually.
Editing and deleting history rows
The History table at the bottom of a KPI detail page has one row per recorded date, newest first, with the columns Date, Value, Ideal and Gap. It scrolls inside a fixed height with a sticky header. Each row carries two icons:
| Icon | What happens |
|---|---|
| Pencil | Opens the quick entry dialog for that date, prefilled with that day’s value. Saving adds a newer record for the day, which then counts. |
| Trash | Asks for confirmation in a native macOS dialog titled Delete entry: Delete the entry from Sat, Jul 25, 2026? This cannot be undone. |
Deleting removes every entry file that KPI has on that date, including intraday values you recorded earlier the same day. There is no undo and no trash bin — only a restore from a backup.
A successful delete shows an Entry deleted toast. A KPI with no history renders the table as a bare header row with nothing underneath; there is no empty-state text. The table has no sorting, filtering, paging or export of its own.
Number formats the field accepts
Both the Daily Entry rows and the quick entry dialog run what you type through the same tolerant parser. All whitespace is stripped first, so 1 234,56 is fine. The rules:
- Both separators present → the last one is the decimal point, the other is grouping.
- The same separator repeated → grouping.
- A single separator that is not shaped like grouping → decimal point.
- A single separator that is shaped like grouping — one to three digits, no leading zero, then exactly three digits — is ambiguous, and the app language decides. German reads
.as grouping, English reads,as grouping.
| You type | English app | German app |
|---|---|---|
2.5 | 2.5 | 2.5 |
2,5 | 2.5 | 2.5 |
1.234,56 | 1234.56 | 1234.56 |
1,234.56 | 1234.56 | 1234.56 |
1.234.567 | 1234567 | 1234567 |
1,234,567 | 1234567 | 1234567 |
2.810 | 2.81 | 2810 |
2,810 | 2810 | 2.81 |
1234.567 | 1234.567 | 1234.567 |
The last row is the grouping shape at work: with four digits in front, the separator can no longer be grouping, so it is read as a decimal point in both languages.
A leading - or + is accepted. A currency symbol, a percent sign or any other trailing text is not — the value has to be the number alone; the unit is part of the KPI definition, not of what you type.
These rules apply to value entry only. The Target field in the New/Edit KPI dialog is a plain number field: a decimal comma is not accepted there. See Anatomy of a KPI.
Read-only mode
When the trial has expired or a licence was revoked, Pulsaria keeps showing everything but blocks writes. For entry that means:
- The per-row check buttons and Save All Entries on the Daily Entry screen are greyed out.
- Add value on the KPI detail page and the pencil and trash icons in the History table are greyed out.
- All of them carry the tooltip Requires a license or active trial.
Reading, filtering and export keep working, and nothing is deleted. Activating a licence restores writing immediately — see Trial & licence.
What entry does not do
- No notes, tags or comments on an entry. A record is a number, a date and a timestamp.
- No bulk paste and no CSV import into the entry form. Import is a full-file JSON restore in App Settings.
- No keyboard shortcut for entry, and no way to jump between rows with the keyboard on the Daily Entry screen.
- No per-entry aggregation setting, and no editing of a single intraday value.
- No reminder inside the screen itself. The optional daily notification lives in Settings.