Assets

The asset record in full - identity, placement, lifecycle data, statuses, costs, and the detail page that gathers everything an asset knows.

An asset is any piece of equipment worth tracking individually: a rooftop unit, a pump, a generator, a scoreboard, an ice resurfacer. This page covers the record itself; for bulk creation see Importing your data.

Anatomy of an asset

Identity

AssetLab is designed for multi-site portfolios, so names don't have to be unique - every arena can have its own "AHU-1". Identical names stay distinguishable by location and by attributes like the Asset ID.

Placement

Both hierarchies, as covered in Core concepts:

An asset's site and building are what you set them to, and its location is a room within that building. Room names repeat from building to building - most sites have a "Roof" or a "Mechanical Room" - so an import matches a location by name only inside the building named on the same row, and creates it there when that building does not have one yet.

Creating what is missing, without leaving the form

Every dropdown on the asset form - status, asset type, manufacturer, site, building, location, system class, system group, system - is searchable and carries an Add New row at the bottom. Use it and a small dialog asks only for the name (and a description, where the record has one); the new record is created in your organization, selected on the asset, and available to every other asset from then on. A record created below one you just picked is filed under it: a building lands in the selected site, a system group in the selected system class.

Asset types are the one exception that asks for more, because they belong to an asset type group rather than to anything you have already chosen on the form. The dialog offers the group picker, and a New group button beside it if the right one does not exist yet. Leave it blank and the type is filed under Unassigned, which you can correct later on the classifications page.

The row only appears if your role can create that kind of record - sites, buildings, locations, system classes, system groups and systems are Manager and above; statuses, asset types and manufacturers are Staff and above. Records that need more than a name are still worth creating properly on their own page; the dialog is for the moment you are mid-asset and the entry simply does not exist yet.

Attaching documents as you go

The New asset form carries the same Documents panel as an existing asset, below Basic information. Add the O&M manual, warranty, commissioning sheet or spec sheet while you have them to hand and they upload the moment the asset is created - there is no need to save the asset, find it again and come back.

Files are held in the browser until then, so cancelling the form uploads nothing. Each file is capped at 10 MB, and PDFs, Word documents and images are accepted. Everything arrives filed under Other; set the real category on the asset's own Documents section afterwards.

Lifecycle & value

FieldDrives
Installation dateAge, remaining useful life
Useful life (years)Lifecycle forecasts, replacement year
Purchase costDepreciation, net book value, and - aged forward from the installation date - current replacement value
Replacement valueRecorded separately from purchase cost. What it costs to replace the asset today
ConditionRisk scores, degradation projection

Purchase cost and replacement value are different numbers

Purchase cost is what you paid. It is the depreciation basis, so it is also what net book value is written down from, and it belongs with the installation date that dates it.

Replacement value is what it would cost today. On the asset form, the replacement value block has two modes: Enter a total takes one figure, and Calculate from units takes a quantity, a unit of measure and a unit replacement value and multiplies them. Only one mode is live at a time - switching to units clears the entered total, so the two can never disagree. Either way, record the date you last confirmed the figure. It is stored exactly as entered and is never aged forward - a figure you gave in today's money does not need escalating to today's money.

The unit calculator does not touch purchase cost, and neither does an import carrying quantity and unit value columns: purchase cost stays what you paid, or empty if you did not say.

How an asset gets priced

Current replacement value is resolved in this order, and both the asset detail panel and the Financial card on the asset page say which one produced the number, so you know which field to edit:

OrderSourceAged forward?
1Replacement value, if you recorded oneNo - it is already in today's money
2Quantity x unit replacement value, in Calculate from units modeNo - the same reason
3Purchase cost, aged from the installation dateYes
4Purchase cost, when there is no installation date to age it fromNo
5Nothing - the asset is unpriced, not worth zero-

Step 5 matters. An asset nobody has costed is left out of value totals rather than counted as zero, because a zero is a figure and "we have not costed this" is not.

The asset detail page

The page opens on a summary header - the asset's photo, type, where it sits, its name, and any scheduled replacement year.

Below it the Overview pairs the record with its supporting material, row by row: Identity & condition beside the photo, Location beside the description, Classification & risk beside Financial. Custom fields and the QR code share the bottom row.

Everything else is one click away in the section list, and each section shows how many records it holds:

On a wide screen, Work orders, TCO, Betterments and Condition assessments show the full record beside the list: click a work order, a cost, a betterment or an assessment and its details open on the right, with the newest one open to start. On a narrower screen the details sit below the list.

Sections load when you open them, so a page you land on from a QR scan or a dashboard drill-down shows the asset without pulling every attachment, cost, and comment first. The section you are on is part of the address, so a link to a specific section opens there.

QR codes

Every QR the product prints - asset labels, location labels, the bulk exports, the printed asset sheet - is drawn the same way: rounded modules in AssetLab navy, shaped corner markers, and the AssetLab mark on a white plate in the middle. Codes are generated at error-correction level H, which reconstructs up to 30% of a damaged code, so the mark in the centre costs nothing in reliability and a scuffed label still scans.

Editing

Every card on the Overview edits in place. Click the pencil in a card's header, change what you need, and Save; Cancel discards. One card is open at a time, so an unsaved change in another card is never written by accident. There is no separate edit form.

Condition and risk read in colour. Condition on the Identity & condition card, and on Classification & risk the whole block - consequence, likelihood, the risk score, and each impact rating - shares one green-to-red scale, the same bands the risk dashboards and the reporting views apply. A critical asset looks critical wherever you meet it. Scores carry their ceiling too, so a risk score reads 20 / 25 rather than a bare number you have to know the scale for.

Editing an asset is Manager and above, which is where it has always sat. Staff read the page: no pencils, and the Financial card and the Costs section are hidden along with them. Any scheduled replacement year stays visible to everyone, in the header.

The list view

Two searches exist: the page-level search matches asset ID, name, status, description, model, serial number, manufacturer, and location; the search box inside the list matches name, manufacturer, and asset type only.

Duplicating an asset

A Duplicate button sits beside Delete on every row of the asset list, for Managers and above. It creates a copy of that asset and takes you straight to the copy's own page so you can finish it off - useful for the tenth identical rooftop unit, where only the serial number and location differ.

What the copy carries:

What it deliberately does not carry:

The copy's name gets a "(copy)" suffix so it is distinguishable in the list until you rename it.

What selecting assets unlocks

Turn on Select, pick rows, and a bulk action bar appears. Actions are role-gated:

ActionMinimum roleWhat it does
Create Work OrderStaffNew work order prefilled with the selection; warns when the selection spans sites or buildings (the first asset's location is used)
InsightsManagerAnalytics over just the selected assets
Create ProjectManagerNew project prefilled with the selection's sites, buildings, system classes, and system groups (requires the projects feature)
MoveManagerRewrite location or classification for the whole selection
Change StatusManagerSet a status across the selection
Apply Risk ProfileManagerStamp a consequence-of-failure profile (details)
DeleteAdministratorRemove the selected records

Statuses vs. deletion

Decommissioned equipment should be status-changed, not deleted - its cost and work history still informs type-level statistics and audits. Deletion is for records created in error, and is permission-gated accordingly.

Finding assets fast

Exporting

Export (Manager and above) produces a CSV of the visible columns or a branded Excel report with inflation-adjusted projections and a summary sheet. There is no PDF export from the asset list; for print-ready documents see Reporting.

Working with assets programmatically

Assets are first-class in the REST API (assets:read / assets:write scopes) and the MCP tools (list_assets, create_asset, update_asset, …). Bulk endpoints exist for scripted migrations.