Skip to main content

Put your city on the map

Roads, watermains, and sewers managed like every other asset - imported from your GIS in minutes, scored for condition, and plugged into work orders, preventive maintenance, and your capital plan.

Available on the Enterprise plan, enabled per organization by an administrator

50,000+
features per map
3
GIS import formats
0-100
condition scale, rolled up to NCI

Every asset on one map

Roads, watermains, sewers, and streetlights managed like every other asset - on a map, in your work orders, in your PM program, and in your capital plan. One system for the arena and the trunk main under the street beside it.

Condition you can defend

Every feature carries a 0-100 condition score with full inspection history, graded on one scale everywhere - Excellent 85-100 down to Critical below 40. Networks roll up into a length-weighted Network Condition Index, trended automatically - so the roads budget is argued with data, not anecdotes.

Your GIS stays in charge

Import GeoJSON, Shapefiles, or CSV in minutes, or paste an ArcGIS Feature Server or Map Server URL to sync your layers live in minutes. Your GIS remains the geometric source of truth - AssetLab adds the work orders, inspections, and costs on top. No migration.

Networks, segments, and nodes - with real topology

Organize buried and linear assets into networks. Segments carry length, material, and inverts; nodes are your manholes, valves, hydrants, and poles. Segments know which nodes they connect to - so your data carries real topology, not just dots on a map.

  • Every feature scored 0-100 with full inspection history - one scale everywhere, Excellent 85-100 to Critical below 40
  • Length-weighted NCI per network, captured to history
  • Color the map by condition; filter by network, material, or class - the map works at every tier, features, routes, and corridors alike
  • Topology validation flags endpoints that don't line up
  • Unit rates and service life inherit feature → material → class, so a GIS-imported estate is priced and forecast from day one
See how condition feeds capital planning →
Network · Water Distribution
Condition across the network
Watermain WM-310Segment41/100
Cast Iron · 1972 · 640 m
Watermain WM-455Segment92/100
PVC · 2011 · 380 m
Hydrant HYD-88Node76/100
Ductile Iron · 1998
Valve V-1204Node58/100
Gate Valve · 1972
Network Condition IndexNCI 60 / 100
NCI is length-weighted - a failing 800-metre trunk main moves the needle more than a stub
GIS import wizard · watermains.zip
Shapefile to city map
Coordinate system detected
NAD83 / UTM Zone 17N - read from the .prj
Fields mapped
Material, install year, condition → AssetLab attributes
Topology snapped
18 segment endpoints joined to nearby nodes
1,240 segments ready to import
Full dry-run report: inserts, rejections, warnings
Preview clean · 0 rejectionsCommit import
Nothing touches live data until you review the dry-run report and commit

From GIS export to city map in minutes

Drag in GeoJSON, a zipped Shapefile straight from ArcGIS or QGIS, or a CSV with WKT geometry from a consultant deliverable. The wizard reads your file first - its real columns, its projection - then maps your fields, snaps topology, and shows a full dry-run preview before anything touches live data.

  • CRS read from the .prj or the file's stated system, with an EPSG picker biased toward NAD83 UTM and MTM zones - the wizard asks rather than guesses, and handles projected GeoJSON
  • Your file's actual columns as drop-downs, pre-filled with best guesses - even the 10-character DBF names ArcGIS exports - across diameter, width, depth, lanes, slope, from/to street, inverts, and status
  • Add custom field: turn any source column - sidewalk type, curb height, plowing flag - into a real text, number, or date field on every feature
  • Endpoint snapping within a tolerance you control
  • Update mode: fresh PCI or CCTV scores update matched features and write inspection records - and re-importing an identical file warns before it duplicates
  • Batched loading with safe retry; an honest 64 MB per-file cap, with advice to split larger layers
Read the Infrastructure launch announcement →

Works with your GIS, not against it

Most cities already run ArcGIS. Paste the URL of any Feature Server or Map Server and AssetLab syncs that layer onto your Infrastructure map in minutes, live as a read-only overlay. See a feature that needs a work order? Click it, bind it via its GlobalID, and start attaching work orders, inspections, costs, and documents.

  • Public and token-protected Feature Servers and Map Servers supported
  • Tokens encrypted at rest, never exposed to the browser
  • Binds on GlobalID only - OBJECTID is refused by design
  • Secured ArcGIS basemaps: enter the GIS server sign-in once and AssetLab mints and refreshes the tokens itself; Test connection reports the server's real error
  • Built-in vector basemaps - Dark, Streets, and 3D buildings - with no key or cost, plus custom XYZ, WMS, and WMTS, including authenticated
Explore work order management →
Esri overlay · gis.city.ca/arcgis
Your GIS layers, live on the map
Watermains
FeatureServer/0
Sanitary Sewers
FeatureServer/1
Hydrants
FeatureServer/2
Hydrant HYD-88Bound via GlobalID
Work orders, inspections, and costs now attach to this feature
Binds on GlobalID only - OBJECTIDs get renumbered and silently break external systems
Work orders · Map view · Day plan
Tuesday - 4 stops in driving order
1
WO-2291 Sidewalk SW-118 · Trip hazard
Overdue
2
WO-2304 Hydrant HYD-88 · Annual flush
Open
3
WO-2310 Watermain WM-310 · Valve exercise
Open
4
WO-2317 Culvert CV-14 · Inspect inlet
In progress
Shortest order suggested · plan savedNavigate to stop 1
Pins coloured by status, red ring when overdue - the same plan shows on the Calendar

Work orders on the map, and a route for the day

The work order queue has a Map view: every open work order bound to a feature is a pin, coloured by status with a red ring when overdue, and every queue filter - including “My work orders” - narrows the pins the way it narrows the list. Click a bare segment or node and raise a work order with the feature already attached. Then plan the day as a numbered route.

  • Edit plan turns the map into a route builder - click pins to add stops, drag to reorder, or let AssetLab suggest the shortest order
  • Add to a day plan from any pin: a seven-day strip shows how many stops each technician already carries
  • Staff plan their own day; Managers plan anyone's - and plans show on the Calendar view too
  • Every stop carries a Navigate button that hands the location to the phone's maps app
  • Facilities / Infrastructure switcher on the queue filters; a focus button on every map returns you to what the map is about
  • Day plans readable and writable through the work_order_schedules REST resource - one call, filtered by technician and date, returns the day in driving order
Explore work order management →

From corridor to capital project in one dialog

Routes and corridors are tiers of the Infrastructure page - a Features / Routes / Corridors switcher beside the view buttons - and the map works at every tier: select a route to see its member segments coloured by condition, or open Corridors to see every corridor drawn in its urgency band. Pick the ones due, and build the project.

  • Select routes and corridors together - two corridors and the route between them become one project
  • Scoped to a renewal-year window, pre-filled with the earliest renewal year in your selection plus your corridor timing tolerance
  • See first what the window covers: features renewing inside it, those already on an active project (skipped, never double-booked), those outside it, and the replacement value of the rest - which pre-fills the budget
  • Windows longer than ten years are flagged, so one project cannot swallow thirty years of a corridor's planning
  • Renewal colour ramp that means what it says: Past due in red, Urgent in orange for this year through two years out, then Soon, Mid-term, and Long-term - on the forecast map and the corridor bands alike
  • Lifecycle dashboard shows facilities, infrastructure, or both - headline cards, projected replacement chart, Capital Brief, and replacement table
See capital project management →
Infrastructure · Corridors · Create project
Renewal window 2027-2031
Corridor · Main StCorridor · 4th AveRoute · Main-4th link
Features renewing 2027-203138 across 2 networks
Already on an active project4 skipped
Outside the window11 left for later
Replacement value of the rest$2.4M → budget
Nothing double-booked · 5-year windowCreate project
Features committed to a live project are skipped by every later renewal project
Lifecycle strategy · 30-year projection
Collector road · condition
Run to replacementWith strategy
SealResurfaceReconstruct
+11 yrs
life added
$2.6M
value deferred
Ranked by cost per added year of life
Crack sealing
$3.1k/yr
Resurfacing
$7.4k/yr
Reconstruction
$14.2k/yr
Crack sealing at condition 80-90 buys two more years. The strategy prices every intervention against the reconstruction it defers.

Crack sealing is a capital decision

Model the interventions between building an asset and replacing it: crack sealing at condition 80-90 that adds two years, resurfacing at 50-69 that resets condition to 100 - each with its own cost, cost source, and trigger window, set once per feature class, material, or diameter band. Every matching feature projects its own curve from its inspected condition.

  • Set once per feature class, material, or diameter band - every matching feature inherits it
  • The feature page draws the sawtooth and shows the renewal year with and without the strategy
  • The adjusted year flows into the Replacement Planner, the map's renewal forecast layer, and corridor dig-once bundling
  • A Due interventions panel turns a feature inside a trigger window into a work order or a project in one click
  • A full API and MCP resource, so a strategy is scriptable like everything else
See the replacement planner →

And everything else you'd expect

Networks, segments & nodes
Real topology, not just dots on a map
Condition-colored map
Vector tiles, smooth at 50,000+ features
Table, split & full-map views
Click a row, the map highlights it - your view sticks per device
Condition trends & NCI
0-100 scores with full inspection history
Features, routes & corridors
Three tiers of one page, all of them on the map
GIS import wizard
GeoJSON, zipped Shapefile, CSV with WKT
Update-mode imports
Fresh PCI and CCTV scores, history intact
Custom fields from your columns
Import any GIS column as a real field - in the table and detail panel
Esri Feature & Map Server sync
Paste a URL, layers live in minutes
Vector, 3D & custom basemaps
Dark, Streets, and 3D buildings built in; XYZ, WMS, WMTS, and ArcGIS
Work order map & day plans
Pins by status, numbered routes, Navigate to each stop
Notes on any feature
An always-open notes box - jot the observation, save, move on
Lifecycle dashboard filter
Show facilities, infrastructure, or both - cards, chart, and Capital Brief
Fast at scale
Paged tables on 55,000-feature networks; delete a network of any size
REST API & MCP
Every feature and day plan scriptable
Having visual metrics on asset age and maintenance history in one place has changed how I think about long-term planning. I can see at a glance which assets are aging, what work has been done on them, and how that factors into our capital planning.
Mark Perkins
Facility Operations Manager, Calgary Winter Club
Read the full story →

Your Streets, Pipes, and Poles Have Been
Managing Themselves Long Enough.

The typical first hour: create a network, drag in last year's GIS export, confirm the preview, and watch your city appear on the map.

No credit card required

Infrastructure FAQ

Common questions about managing roads, watermains, and sewers in a CMMS - GIS import, Esri integration, and condition scoring with NCI.

What is infrastructure asset management software?

Infrastructure asset management software manages linear and spatial assets - roads, watermains, sanitary and storm sewers, streetlights - as networks of segments and nodes on a map. Each feature carries attributes like material, install year, and length, plus a condition score, inspection history, work orders, and costs, so buried assets get the same rigour as buildings.

Can I import GIS data into a CMMS?

Yes. AssetLab's import wizard accepts GeoJSON, a zipped Shapefile straight from ArcGIS or QGIS, or a CSV with WKT geometry. It reads the coordinate system from the .prj or the file itself and asks you to confirm rather than guessing, presents your file's real columns as drop-downs pre-filled with best guesses, lets you import any extra column as a custom field, snaps segment endpoints to nearby nodes, and shows a full dry-run preview - nothing touches live data until you commit. Files up to 64 MB each; split larger layers.

Does AssetLab integrate with ArcGIS and Esri?

Yes. Paste the URL of any ArcGIS Feature Server or Map Server - public or token-protected - and AssetLab syncs that layer onto your Infrastructure map in minutes as a read-only overlay. Click a feature and bind it via its Esri GlobalID to attach work orders, inspections, and costs. Tokens are encrypted at rest and never exposed to the browser, and your GIS remains the geometric source of truth.

What is a Network Condition Index (NCI)?

NCI is a 0-100 rollup of every feature's condition in a network, weighted by length - a failing 800-metre trunk main moves the needle more than a failing service stub. Every change is captured to history automatically, giving you a condition trend line per network for council and budget conversations.

How do I keep pavement and sewer condition scores up to date?

With update-mode imports. When your pavement condition vendor or CCTV contractor returns fresh scores for assets you already have, choose a stable match key and the wizard updates the matched features and writes a new inspection record for each - condition history included, no re-import of geometry required.

Can I create work orders and preventive maintenance for roads and watermains?

Yes - everything you can attach to a building asset, you can attach to a sewer segment. Create work orders directly from a feature on the map, and schedule preventive maintenance against an individual feature or an entire network - “flush every hydrant in Zone 3 annually” - with automatic work-order generation.

Can technicians plan their day on the map?

Yes. The work order queue has a Map view on every plan; what the Infrastructure module adds is the network underneath it. Every open work order bound to a feature is a pin, coloured by status with a red ring when overdue, and every queue filter narrows the pins. The network draws in plain grey so the status colours are the only ones competing for your eye, and the palette button beside the focus control brings the condition colours back with their legend. A technician's day plan is a numbered route - click pins to add stops, drag to reorder or let AssetLab suggest the shortest order - and each stop carries a Navigate button that hands the location to the phone's maps app. Staff plan their own day, Managers can plan anyone's, and plans appear on the Calendar view and through the REST API.

Can I turn a corridor or route into a capital project?

Yes. Select routes and corridors from the Infrastructure page - the selection can span both tiers - and create a project scoped to a renewal-year window. Before it is created, AssetLab tells you how many features renew inside the window, how many are already committed to an active project and will be left out, and the replacement value of the rest, which pre-fills the budget. Corridor renewal bundles keep their own one-click path.

Can AssetLab model crack sealing and resurfacing, not just replacement?

Yes - that is what a lifecycle strategy is for. Model the interventions between building an asset and replacing it: crack sealing at condition 80-90 that adds two years, resurfacing at 50-69 that resets condition to 100, each with its own cost, cost source, and trigger window, set once per feature class, material, or diameter band. Every matching feature projects its own curve, the feature page draws the sawtooth and shows the renewal year with and without the strategy, and that adjusted year flows into the Replacement Planner, the map's renewal forecast layer, and corridor dig-once bundling. The Infrastructure dashboard prices the program - year-by-year cash flow, years of life added, replacement value deferred, and each strategy ranked by cost per added year of life.

What condition scale does AssetLab use?

One scale, everywhere: every asset and feature is scored 0-100 and banded Excellent 85-100, Good 70-84, Fair 55-69, Poor 40-54, and Critical below 40, identically on the feature page, the map, the dashboards, and the insights panels. Anything without a score shows as Unscored rather than disappearing from the distribution.

Who is the Infrastructure module for?

Municipalities, water and wastewater utilities, public works departments, and campus operators like universities, hospitals, and airports that run private roads and buried utilities. It's available on the Enterprise plan and enabled per organization by an administrator.