Create, manage, and track maintenance work orders
Complete guide to work order creation
Work orders are the backbone of maintenance. Each gets an auto-generated reference (WO-1, WO-2, etc.) and tracks everything from creation to closure.
For recurring work, create task templates with predefined checklists and apply them when creating work orders.
Open a list already filtered, without re-applying your filters every time
A saved view stores the filters you use most often under a name of your choice. One of your views can be marked as the default: the list then opens already filtered, every time, on every device.
Filter the list the way you want it โ for example on two teams โ then open the Views menu at the start of the filter row and choose "Save current filtersโฆ". Give the view a name and it appears in the menu, ready to switch to.
In the Views menu choose "Manage viewsโฆ", then the star next to the view you want. From then on, opening the page applies that view automatically. The Views button always shows which view is active, and the active-filter chips stay visible, so the list never narrows silently.
When you follow a link that already carries filters โ a dashboard card, a notification, an "overdue" tile โ the page shows exactly what that link promised and your default view is not applied. Use "All work orders" in the Views menu to go back to the unfiltered list.
Everything happens under "Manage viewsโฆ": rename a view, delete one, or choose "No default view" if you would rather open the full list again. Deleting a view never touches your work orders or requests. You can keep up to 20 views per list.
The requests list has its own Views menu and its own default view, independent from work orders. Views are personal: yours are visible to you only, and they follow your account from one browser to another.
Classify your work orders by type โ and keep your KPIs honest
Every work order in FreeMaint carries an explicit maintenance type. The type drives how the work appears on your dashboards, how it counts toward reliability KPIs like MTTR and MTBF, and how it groups under the equipment history.
These are TWO separate fields, not a duplicate. Maintenance type is the standard CMMS classifier (Corrective, Preventive, etc.) โ it drives KPIs and you should set it on every work order. Category is an OPTIONAL technical sub-classification (Electrical, HVAC, Mechanical, Plumbing, Safety) that helps you slice and filter further. A typical work order is "Corrective" maintenance with category "Electrical". On the Work Orders list you filter by it with the "All Categories" dropdown in the filter bar, just before "All failure categories": tick several categories at once, or pick "(Not assigned)" to find work orders that were never categorised. You can also switch the Category column on from the column picker above the table. Both dropdowns sit behind the "More filters" button.
Rather than configuring the same schedule per asset, you can set a company-wide default once. All NEW assets created afterwards will inherit it automatically. Your existing assets are NOT touched โ they keep their current configuration. Useful for SMBs where ~all assets share the same schedule (35h/week, 2-shift, etc.). Aligned with the standard UpKeep, Fiix, Maximo practice.
On the Analytics page (Equipment tab), the MTBF column shows the schedule next to the value when it isn't the default 24/7 (for example '12.5 (8hร5d)'). The detail page also shows the schedule. Existing assets keep their 24/7 default until you edit them explicitly โ your historical MTBF values do not change retroactively until you act on each asset.
MTBF measures how often an asset breaks. The number is only meaningful if the denominator โ operating time โ reflects how the asset actually runs. By default FreeMaint assumes 24 hours per day, 7 days per week. If your asset only runs day shifts or two shifts, edit its 'Operating schedule' on the asset form so the MTBF reflects real operating exposure.
If your week isn't uniform โ e.g. 35h/week with Mon-Thu 8h + Friday 3h, or a one-off Saturday morning โ switch to ยซ Custom ยป mode then pick the ยซ Per day ยป sub-mode. Seven independent inputs appear (Mon, Tue, Wed, Thu, Fri, Sat, Sun), each in hours (0 to 24). A live counter shows the weekly total as you type. MTBF uses that total as the denominator (35 h/week instead of 168 calendar = factor ~0.21).
FreeMaint's taxonomy is aligned with UpKeep, Fiix, MaintainX, and Maximo so analytics stay comparable across systems and benchmarks.
Changing the company default does NOT retroactively update your existing assets. Only assets created AFTER the save inherit. To update an existing asset, edit it individually.
The Operating Schedule describes machine run-time and only affects MTBF and Availability calculations โ it never moves any dates. The Work Schedule (Company Settings โ Work Schedule, Business plans) is your workforce calendar โ working days, shifts and holidays โ and is what rolls Preventive Maintenance and Procedure due dates off non-working days.
Complete status flow from creation to closure
Every work order follows a lifecycle. Understanding each status is key to effective maintenance management.
From the Start Work and Mark Complete dialogs, you can update the asset's operational status atomically with the WO transition โ no need to navigate to the Asset module.
When closing a work order, leaving 'No change' lets the system auto-reset the asset from DOWN/DEGRADED/MAINTENANCE to OPERATIONAL. Override only when the asset is not fully repaired.
The Work Orders list opens with a row of summary cards and a filter bar, and both can be trimmed down. Each choice is remembered on your own account and changes nothing for anyone else. Use the "Summary cards" button beside the cards to untick the ones you never read, or hide them all โ the cards are only shortcuts, so the Status dropdown still reaches every status, Overdue included. The filter bar keeps Search, Status, Priority and "Assigned to" in view and folds the rest โ Asset, Location, Category, Failure category, Team, Maintenance type and the date controls โ behind the "More filters" button. A number on that button says how many of the folded filters are narrowing the list right now, and every active filter still shows as a removable chip under the bar.
If your workflow asks the requester to validate a completed work order, they receive an email with a link and can sign off without an account โ which matters, because a person who reported a fault by scanning a QR code does not have one. The link works for 14 days, once.
"Overdue" sits in the same Status menu as the eight work-order statuses, but it is not one of them โ it is a modifier meaning "still active and past its due date". You can therefore tick it together with statuses: "Overdue" plus "In progress" shows late work someone has already started, and "Overdue" plus "Open" shows late work nobody has picked up. The four finished statuses (Completed, Validated, Closed, Cancelled) are greyed out while Overdue is ticked, because a finished work order is by definition not overdue. Both selections travel in the page URL, so a combined view can be bookmarked or shared.
On the Work Orders list, use the "Filter by date" control to narrow the list to a date range. First choose which date to filter on โ Due Date, Completed Date, Closed Date, or Created Date โ then pick the range. The quick presets follow the date you picked: past windows such as "Last 7 days" for Completed, Closed and Created dates, and forward windows such as "Next 7 days", "This month" or "This year" (January 1st to December 31st) for Due Date, since a due date describes work still ahead of you. For example, to see everything closed last week, set the field to "Closed Date" and choose "Last 7 days". You can also filter by maintenance type (corrective, preventive, and so on) with the "Maintenance type" dropdown. When the date field is set to Due Date, a second dropdown lets you choose between "Any due date", "With a due date" and "No due date". "No due date" isolates work you deliberately leave unscheduled so it never shows up as overdue; it is mutually exclusive with a date range, so choosing it clears the range. Sorting has its own two controls: the "Sort by" dropdown picks the column, and the arrow button next to it shows and flips the direction (ascending or descending). Each column starts in its natural direction โ due dates soonest first, creation and completion dates most recent first โ and your choice is remembered. Every active filter appears as a removable chip and is kept in the URL, so you can bookmark or share the view. This filtering is available on every plan, including the free Core plan โ a paid plan is only needed to export the filtered list.
A work order that was never started can be completed directly from Open or Scheduled โ for work already performed off-system, such as a contractor job done under a permit. It needs the "Complete a work order that was never started" permission (Admin, Manager and Supervisor have it by default). No start time is recorded, because none happened: the work order is simply marked complete. Everyone else still goes through Start Work first.
Made a mistake in the completion notes or root cause? Edit them directly on the work order's Details tab while it is COMPLETED. Once a manager validates the work order or it is closed, the completion record locks โ reopen the work order to amend it โ the "Reopen Work Order" button on the status stepper puts it back to In progress. Costs and labor stay editable from their own tabs.
By default, anyone with the work_orders.close permission can close a COMPLETED work order. To require manager approval first, configure a workflow rule under Settings โ Workflows โ Work Orders. Company admins โ and anyone who can edit your workflows โ can always close, so the person who set up the rule is never locked out. Users who canโt close now see which roleโs approval is required instead of a missing button.
Assign work to individuals or teams
Proper assignment ensures work gets done by the right people.
Select a technician from the dropdown. They receive a notification and the WO appears in their 'My Work Orders' view.
On a work order's detail page, the Assignees card in the sidebar lets you add or remove people directly, without entering Edit. Search for a colleague and select them, or use the X beside a name to remove them. The card is always shown, including when nobody is assigned yet. If the work order is linked to a team, that team's people are listed first; everyone else stays selectable, so you are never blocked from assigning someone outside the team. Managing assignees and watchers requires the "Assign work orders" permission. Without it, an assigned technician can only step off the job themselves โ and only while their role has the "Self-assign" permission.
Assign to a team when any member can do the work. Every team member โ the leader and all members โ is notified (in-app, push and email, subject to each user's notification preferences). A user who is also a direct assignee is notified once. The team leader can delegate to specific members.
Check the Calendar view before assigning to avoid overloading specific technicians.
Follow a work order's progress without being assigned
Watchers let people follow a work order and get notified of its progress without being the creator, an assignee, or a team member. This is ideal for supervisors, safety officers, or QA staff who need visibility but do not perform the work themselves.
When you assign a work order to someone else, you are added as a watcher automatically. So a supervisor who assigns work on behalf of a technician keeps full visibility into status changes, comments and photos โ even without being the creator or assignee.
Open a work order and use the Watchers card in the sidebar. Anyone who can edit work orders can add or remove watchers. Search for a colleague and select them; remove a watcher with the X next to their name.
Watchers can open the work order (even under a restricted data-scope role) and are notified on status changes and new comments, subject to each userโs own notification preferences.
When a work order names someone in Requested By, that person is added as a watcher. They can then open the work order and are notified of status changes and new comments โ even though they did not create it and are not assigned to it. This covers the common case of a department head or manager who asked for the work but had someone else record it. They are added only at the moment the requester is first set, so removing them from the Watchers card is permanent: a later edit will not bring them back.
Adding someone as a watcher grants them read access to that specific work order โ a simple way to give visibility without changing their role.
Add structured tasks to work orders
Tasks break down a work order into trackable steps. You can edit a task's details anytime, and drag the handle (or use the up/down arrows) to set the order technicians follow.
Create task templates for recurring work. A template for 'Monthly HVAC Inspection' saves time and ensures consistency.
Log labor hours and costs
FreeMaint tracks labor time and costs on every work order for cost analysis and capacity planning.
You can also log time against a subcontractor or vendor instead of an internal user โ switch the 'Logged for' selector to Subcontractor and pick the vendor.
Log time as work happens for accurate cost data.
Each labor entry has a time type: Intervention or Travel. Travel time is tracked separately but excluded from the asset intervention-time KPI (MTTR); only intervention (hands-on) time feeds it.
Track parts used and costs
Recording material usage is essential for cost tracking. FreeMaint automatically deducts from inventory. On a work order you can also add a part by scanning: open Add part on the work order, then scan into the Scan barcode field โ the matching part is selected automatically.
Sometimes a part physically exists but the system shows 0 in stock (a miscount, or a delivery that was never recorded). By default, out-of-stock parts can't be added to a work order. An administrator can enable ยซAllow adding parts with no stock to work ordersยป in Settings โ System. Once on, technicians can add the part anyway after a confirmation; the stock goes negative so the shortfall is flagged for a physical recount and correction. The maintenance work is never blocked by an inventory record error.
On a work order linked to an asset, switch on ยซOnly this asset's partsยป in the Add part form to narrow the picker to that asset's nomenclature (bill of materials) instead of the whole catalog.
Administrators can require every planned part to be confirmed before a work order can be completed: add the "Planned Parts Confirmed" field to the Work Order workflow in Company Settings โ Workflows.
Update quantities if parts were returned. FreeMaint tracks consumed vs returned for accurate net consumption.
Track contractor and external costs
Beyond labor and parts, track additional costs like contractor fees, equipment rental, or specialized services.
Link costs to vendors for spending analysis in reports.
Charge customers for parts and labor on a work order
If you do paid work for external customers, you can record what to charge them and show the total on the printed work-order report. Customer billing is a Business-plan feature.
The work-order detail page shows a Customer Billing total (parts + labor). The printed report includes a Customer Billing section with the total to charge. It only appears when at least one sale price or billing rate is set.
The work-order search box also matches the customer's name and reference, so you can type a customer to see every job on their equipment. Searching works on any plan, even where the Customer column itself is a Business feature.
Customer billing is available on the Business plan. The sale price and billing fields stay hidden on lower plans.
If you charge a minimum call-out fee for on-site visits, set Minimum Visit Fee in Company Settings โ Regional. It is applied automatically to new work orders that have a customer: the fee covers the first included hour of labor, and additional hours are billed at the normal billing rate. You can adjust or remove the fee on each work order's Customer Billing card (needs the cost-edit permission), and it appears as its own line on the report. Set the included hours to 0 to charge the fee on top of all labor instead.
When to use each priority
Setting the right priority ensures urgent work gets attention first.
In Settings โ System you can give each priority a number of days. When a work order is created without a due date, that many days are added to the creation date. A date entered by hand always wins, and preventive maintenance keeps the date from its own schedule.
Define priority guidelines for your organization so everyone uses them consistently.
Quality control after work completion
The validation workflow ensures quality control. Managers review completed work before final closure.
If your company has added custom fields to work orders, they now appear in the Complete dialog โ filled in by the person who did the work, on the web or in the mobile app. Required fields must be answered before the work order can be completed. At validation the same form is shown again, already filled, so the reviewer checks the answers instead of writing them.
If you sell the parts you fit, you can stop a work order from being validated while a part has no sale price or sells below its cost. In Company Settings > Workflows > Work Orders, add a step on the Validated status and tick the required field "Parts Priced Above Cost": the Validate button then stays hidden until every billable part is priced, and the work order names the parts at fault. Parts supplied by the customer and free-text parts are never counted. Sale prices are a Business-plan feature, and the rule does nothing until you add it.
When rejecting, provide clear feedback so the technician knows what to fix.
LOTO / Lockout-Tagout safety management on work orders
LOTO (Lockout/Tagout) is a critical safety procedure that prevents the unexpected startup of machinery or release of stored energy during maintenance. FreeMaint provides built-in LOTO management on work orders, compliant with OSHA 29 CFR 1910.147 and EN ISO 14118 standards.
FreeMaint prevents work order completion while the machine is locked. This ensures no one accidentally closes a work order before equipment is released.
This feature helps maintain compliance with occupational safety regulations and protects your maintenance team.
Before working on machinery, technicians must physically lock and tag the energy source to prevent unexpected activation. LOTO ensures worker safety by isolating hazardous energy.
Collaborate on work orders
Comments and attachments enable real-time collaboration. When a work order is completed, the technician's completion notes and root cause appear at the top of this tab as a Completion Summary.
Attach photos, documents, manuals, or vendor quotes directly to the work order.
Timestamped and attributed to the poster. Use for progress updates, questions, and guidance. Type @ in a comment to mention a colleague by name: they are notified immediately and added as a watcher, so the work order stays visible to them even outside their usual scope.
Need to fix a typo or add a photo you forgot? Click the edit button on your comments to update the text, attach new images, or remove existing ones. An 'edited' badge will appear so teammates know it was revised.
Export PDF generates a complete record of the work order in one file: details, tasks, parts, labor, attachments (photos embedded), comments, custom fields, signatures and status history. Tick the sections you want before downloading, and choose the photo size. Useful for audits, vendors and management. Print stays available on every plan for a quick browser printout; the complete PDF export requires the Starter plan.
Take before/during/after photos for visual documentation and training.
Complete change tracking
FreeMaint maintains a complete audit trail of every change to a work order.
The audit trail satisfies maintenance compliance requirements. Export for audits.
Backfill maintenance performed before you started using FreeMaint
When you adopt FreeMaint you can record maintenance that was already carried out earlier โ so your asset history, analytics and audit trail are complete from day one. This is called historical logging (or backdating a work order). Historical records carry a Historical badge on the work order, and the History tab states who logged the record and when the work was actually completed.
Each historical work order is stored as Closed with its real completion date, so it appears in the asset's maintenance history and counts toward analytics, trends and PM-compliance for the month it actually happened. When you link it to a PM and keep the rebase option, the plan's next due date is recalculated from the completion date โ and the schedule is never moved backwards.
Logging past work needs the โBackdate work ordersโ permission, granted to Admins and Managers by default. Technicians do not see the button, which protects the integrity of your maintenance history. An admin can grant the permission to other roles under People โ Roles.
Log one past work order per service performed. There is no bulk/CSV upload for historical completions yet โ they are entered one at a time.
Warning:
Do not create a new work order and mark it Complete just to record old work โ that distorts your completion dates and compliance figures. Always use โLog past workโ, which stores the true historical date. To defer an upcoming preventive maintenance instead, use the โSkip next occurrenceโ option.
Turn a closed work order into knowledge the next technician will actually find
A lesson learned is what your team knows after fixing something โ written once, so nobody has to work it out again. FreeMaint builds each one from a work order you have already closed, then surfaces it automatically the next time someone opens a similar job.
Start with the work orders you already closed with a real root cause โ those become good lessons in about a minute each. Ten well-written lessons are worth more than a hundred thin ones.
Manage WOs from the mobile app
The mobile app gives technicians full work order access in the field.
Important:
The Edit work order form has no photo field โ do not look for one there. Photos taken offline stay on the phone and upload by themselves once you reconnect.
Cached data remains available when connectivity is limited.
FreeMaint CMMS
ยฉ 2026 Freemaint LLC. All rights reserved.