Skip to main content
An appraisal template is a reusable scoring blueprint — it decides what an employee is judged on and how much each part counts. Instead of redefining the same KRAs and rating criteria every time you run a review, you build the template once and then point appraisal cycles at it. Every employee assigned that template is scored against the same weighted mix, so results across a team or a whole business stay comparable. A template has a title, an optional description, and two weighted sections: a list of KRAs (Key Result Areas — the objective goals) and a list of rating criteria (the softer feedback dimensions such as Communication or Teamwork). Each row in either section carries a percentage weight, and within each section those weights must add up to 100%. This page covers building, editing, and deleting templates, the weightage rule, and how a template flows into a live appraisal cycle. You’ll find this at: /hr/performance/templates (list) and /hr/performance/templates/:id (detail)
Hitaji 360 is multi-business: templates belong to the business selected in the switcher at the top of the app. A template created in one business is not visible in another, and the system fails closed (returns “not found”) if you try to open a template that belongs to a different business. Confirm the right business is selected before you create or edit a template.
📷 Screenshot: Appraisal Templates list with the “Add Template” button — to be added.

Before you start

Templates are built from two libraries you should set up first:
  • KRAs — the goals/objectives you weight in the KRAs section. Create them under KRAs (see Related). You can also create a KRA on the fly from inside the template form.
  • Feedback criteria — the named dimensions you weight in the Rating Criteria section. Create them under Feedback criteria (see Related). These too can be created on the fly from the form.
You don’t have to pre-build everything — the template form lets you add a new KRA or a new criterion without leaving the dialog — but a tidy library makes templates faster to assemble.

Who can see and edit templates

The templates pages are configuration screens, not everyday reading. Both the list and the detail page are guarded by the hr-performance:config permission, so a user who can only read performance data will not even see these pages in the app — they are for the people who set up the performance framework.
Because the web routes require :config, the read-only hr-performance:read permission matters mainly to other parts of the system that fetch templates (for example, an appraisal cycle resolving which template to apply).

Creating a template

From the Templates list choose Add Template. The form opens with a title, a description, and the two weighted sections.
📷 Screenshot: Create Appraisal Template dialog showing the KRA and Rating Criteria weightage rows — to be added.

Fields

Building the weighted rows

Each KRA row has a KRA picker and a weight (%) box. Each rating row has a criteria picker and a weight (%) box. Use Add KRA row / Add criteria row to add more, and the bin icon to remove a row (you can’t remove the last remaining row of a section). As you type weights, the dialog shows a running Total for each section and flags it in red if it isn’t 100%. Empty rows — where you haven’t picked a KRA or criterion yet — are ignored both in that total and on save, so a half-filled row won’t silently swallow weight you typed.
The 100% rule. Within each section, the weights of the populated rows must sum to exactly 100% (a tiny rounding tolerance applies). The Create template button stays disabled while either section is off, and the footer shows KRA weights ≠ 100% / Criteria weights ≠ 100%. If a request somehow reaches the server with bad weights, the API rejects it with: “Total weightage of all KRAs must equal 100% (got 90%).” (and the equivalent message for rating criteria). The Rating Criteria section is exempt only when it’s empty — if you add any criteria rows, they must total 100% too.

What gets sent

On save, the form sends only the populated rows. The create payload looks like this:
The server additionally checks that every KRA and criterion you referenced actually exists in this tenant (it rejects with “One or more referenced KRAs do not exist.” otherwise) and that the title isn’t already taken, then saves the template with its weighted child rows.

The template detail page

Opening a template (/hr/performance/templates/:id) shows its title and description with two tabs — KRAs and Rating Criteria — each listing its rows and per-row weightage, plus a Total that turns red if it isn’t 100% (a useful integrity check on existing templates). Use Edit to change anything.
📷 Screenshot: Template detail page with the KRAs / Rating Criteria tabs — to be added.

Editing a template

Choose Edit (on the detail page or via a list row) to reopen the same dialog pre-filled with the current rows. You can rename it, change the description, and add, remove, or re-weight rows in either section. The same rules apply:
  • The title must stay unique within the business.
  • If you change the KRA section it must still total 100% and keep at least one KRA — sending an empty KRA list is rejected.
  • If you change the rating-criteria section it must total 100% (unless you clear it entirely).
Saving rewrites the template’s rows to match what’s in the dialog.
Note: editing a template changes the blueprint going forward. Appraisals already created from it in a running cycle are scored from their own captured copy, so re-weighting a template will not silently rewrite scores that have already been generated. When in doubt, prefer creating a new template for a new cycle.

Deleting a template

Deleting a template soft-deletes it: it disappears from the list and can no longer be selected, but the record is retained behind the scenes (so historical appraisals that referenced it aren’t orphaned). There is no built-in “restore” button in the UI today. Deleting requires hr-performance:config.

How a template is used in an appraisal cycle

A template on its own does nothing — it earns its keep when an appraisal cycle assigns it to the people being reviewed (the appraisees). When a cycle pulls in its eligible employees, each appraisee gets a template resolved in this order:
  1. An explicit template chosen for that cycle’s intake (if you picked one when adding employees), otherwise
  2. the default appraisal template attached to the employee’s position / designation, otherwise
  3. none — the appraisee is flagged as missing a template and can’t be scored until one is set.
That second step is the time-saver: a position (designation) can carry a default appraisal template, so when a cycle sweeps in everyone in that role, the right template is attached automatically with no manual picking. You can still override the template for any individual appraisee from within the cycle. Once an appraisee has a template, that template’s weighted KRAs and rating criteria define the scorecard, and the percentage weights drive how the individual scores roll up into the appraisal’s overall result. See Appraisal cycles and Appraisals (under Related) for the scoring flow end to end.