Run your lab with confidence, from sample to certificate
A modern LIMS for research and analytical labs — sample tracking, analysis workflows, two-tier result review, and certificates of analysis, with role-based access and an immutable audit trail.
Full chain-of-custody
Two-person result review
Immutable certificates
Capability-based access
12
5
2
4
| Sample | Analysis | Analyst | Due | Status |
|---|---|---|---|---|
| 25-0142 | Total Nitrogen | A. Okafor | Today | To be verified |
| 25-0141 | pH (aqueous) | R. Whyte | Today | Out of spec |
| 25-0139 | Trace Metals ICP-MS | M. Duarte | Tomorrow | In progress |
| 25-0136 | Dissolved Organic Carbon | A. Okafor | 12 Mar | Verified |
From field sample to signed certificate
Five stages, one system of record. Each stage hands the next a complete, attributable history — nothing is re-keyed and nothing is lost between spreadsheets.
Register
A specimen is logged with a human-readable YY-NNNN identifier, material type, GIS collection point, owning project and storage location.
Order
Pick tests from the service catalog, or expand a saved panel into one analysis per service. Priority and due date default from the service turnaround.
Analyse
Assign an analyst and a compatible instrument, batch related work into a worksheet with QC, then record a typed numeric, text or boolean result.
Verify
Results are flagged against their specification automatically, then verified by a second person — never the submitter — or retracted for rework.
Certify
Publish the result and issue a Certificate of Analysis: an immutable snapshot frozen at issue time and rendered to PDF.
Every specimen accounted for, from the field onwards
A sample is more than a row in a spreadsheet. The LIMS records where it came from, what it was split into, where it is now, and who has held it.
Human-readable YY-NNNN identifiers, allocated race-safely under concurrent registration
Sub-sample lineage: split a specimen and the parent link travels with every child
GIS collection point captured at registration and carried onto the certificate
Building → room → storage facility hierarchy for physical location
Chain of custody recorded when a sample is dispatched to an external facility
Project and department scoping, with confidentiality flags for sensitive studies
Collected
55.9533° N, 3.1883° W — 4 Mar, 09:12Registered
Sample 25-0142 · soil · Project GEO-7Stored
Lyell Centre → Room 2.14 → Freezer BSub-sampled
25-0142-A · parent link retainedDispatched
External facility · custody recordedA process that cannot be short-circuited
Analyses move through an explicit state machine. Transitions that would skip review, or let someone sign off their own work, are simply not available.
Eight statuses with only the permitted transitions accepted by the API
Two-person rule: the reviewer must differ from the analyst who submitted the result
Retract for rework returns an analysis to the bench without discarding the result record
Specification-driven out-of-spec flagging on numeric, text and boolean results
Panels expand a standard test suite into one analysis per service in a single action
Worksheets batch related analyses for bench-level work and QC
Certificates you can defend years later
A Certificate of Analysis is a frozen snapshot, not a live query. Reprint it in five years and it says exactly what it said the day it was issued.
Immutable JSON snapshot captured at issue time and rendered to PDF
Reissue supersedes its predecessor and invalidates it — certificates are never edited
Every result state change writes an attributed, append-only audit event
Turnaround is measured from that audit trail, so it cannot be retroactively adjusted
Published results are the only ones a certificate can draw on
Result submitted · 12.4 mg/L
R. WhyteCompliance checked · within spec
systemVerified
A. OkaforPublished
S. BellCertificate COA-25-0087 issued
S. BellThe operations, not just the results
Reagents run out, instruments fall out of calibration, and work queues up. These modules cover the day-to-day that keeps a lab running.
Inventory & reagents
Suppliers, items and lots with expiry tracking, derived available stock, low-stock and expiring-soon alerts, and consumption traceable back to the analysis that used it.
Instruments & calibration
Calibration and service records per instrument, with a non-blocking out-of-calibration warning raised at the point an analysis is assigned.
Worklists & scheduling
Routine, high and urgent priorities with turnaround-derived due dates, overdue detection, and ready-made My work, Backlog, Overdue and Due soon queues.
Analytics & KPIs
Five reporting endpoints — turnaround, throughput, backlog, quality and volume — sliced by service, sample type and department over any date window.
Typo-tolerant search
Full-text search across samples, projects and analyses, faceted and visibility-safe: a user never sees a hit for a record they are not permitted to open.
Bulk import
A four-step upload → map columns → preview → commit pipeline for samples and results, so legacy spreadsheets migrate without hand-keying.
Targeted notifications
Verification needed, out-of-spec flagged and certificate issued fire instantly to the right people; overdue analyses and expiring lots are swept daily.
Projects & departments
Group samples by project with owners, collaborators and funding detail, and scope confidential studies so they stay on a need-to-know basis.
Open REST API
Every screen is backed by a documented OpenAPI schema, so instruments, dashboards and downstream systems can integrate directly.
Cumulative roles, twelve capabilities
Permissions are capability-based rather than page-based. Roles stack — a QA manager holds everything a senior analyst does — and a read-only viewer sees records without holding any capability at all.
| Capability | Analyst | Senior analyst | QA manager | Lab admin |
|---|---|---|---|---|
| Register samples | ||||
| Order analyses | ||||
| Enter results | ||||
| Verify results | ||||
| Publish results | ||||
| Manage specifications | ||||
| Issue certificates | ||||
| Manage catalog | ||||
| Manage instruments | ||||
| Manage storage | ||||
| Manage departments | ||||
| Assign roles |
Secure, auditable, and built to scale
Enforced separation of duties
The verify step rejects the submitter. Integrity is a database constraint, not a policy document.
Immutable audit trail
Every result and release action is written to an append-only, attributed log that reporting reads from.
Race-safe identifiers
Sample and certificate numbers are allocated atomically, so concurrent registration never collides.
Built to integrate
Documented REST API, CSV import pipeline, search index and webhookable notifications fit your stack.
Ready to bring your lab into one place?
Sign in to your workspace. Accounts are provisioned by your lab administrator — speak to them if you need access.
Sign inWant the detail first? Read the documentation.