IBM Maximo Reporting: BIRT Reports, Custom SQL Reports, and What Most Companies Get Wrong

Last Update

IBM Maximo reports
Table of Contents
    Add a header to begin generating the table of contents

    The Problem With Maximo Reporting Nobody Talks About

    IBM Maximo is one of the most capable Enterprise Asset Management (EAM) platforms in the world. It tracks assets, work orders, preventive maintenance schedules, MRO inventory, labor, purchasing, and contracts across facilities, utilities, manufacturing plants, transportation fleets, and healthcare campuses. The data inside a well-implemented Maximo instance is genuinely rich.

    Getting that data out in a useful format is a different story.

    Most Maximo users fall into one of two camps. The first camp runs the standard Maximo BIRT-based reports, uses the built-in query views, exports to Excel, and spends too much time assembling the reports that operations and maintenance leadership actually need. The second camp has realized that the built-in reporting is insufficient and is looking at options — but hasn’t found a clear answer on what those options actually are and what each one involves.

    This post covers both situations honestly. We build custom Maximo reports for facilities managers, maintenance teams, utility companies, manufacturers, and hospitals. Here is what we’ve actually learned about Maximo reporting — including the parts most vendors don’t talk about.

    What Maximo’s Native Reporting Actually Is: BIRT

    Here is the fact that most Maximo reporting discussions gloss over: Maximo’s built-in reporting engine is BIRT — Business Intelligence and Reporting Tools — an opensource Eclipse-based report generation framework.

    This matters because BIRT is a real, capable reporting platform. It’s the same engine used in many enterprise Java applications. When IBM built Maximo’s reporting infrastructure on BIRT, they chose a tool with genuine depth — not a proprietary report viewer. BIRT reports in Maximo are .rptdesign files that connect to Maximo’s underlying database (which can be IBM Db2, Oracle, or SQL Server depending on your deployment) and generate formatted output in HTML, PDF, XLS, and other formats.

    What this means practically:

    Maximo’s standard report library is BIRT reports — each one is a .rptdesign file

    Custom BIRT reports can be built by anyone with BIRT development skills and

    Maximo database knowledge

    • The BIRT report engine is exposed and accessible — not locked behind proprietary tooling
    • Modifying existing Maximo BIRT reports or building new ones does not require IBM’s involvement

    ReportingGuru has a dedicated BIRT development practice — and Maximo is one of the most common environments where BIRT expertise is needed. The two service pages have never been linked together on the site, which is why we’re being explicit about it here.

    What Maximo’s Built-In BIRT Reports Can Do

    Maximo ships with a substantial library of BIRT reports covering the core EAM use cases.

    Out of the box, the standard report library includes:

    Work Order Reports

    Work order list by status, priority, and asset

    Work order cost summary (estimated vs. actual labor and materials)

    Work order completion reports with elapsed time

    Corrective vs. preventive maintenance breakdown

    Open work order aging by technician and supervisor

    Asset Reports

    Asset list by location, classification, and status

    Asset cost history (cumulative maintenance spend per asset)

    Asset meter readings and condition monitoring history Asset hierarchy and parent-child relationship reports

    Preventive Maintenance (PM) Reports

    • PM compliance rate — scheduled vs. completed PMs
    • PM schedule forecast (upcoming PMs by asset and date)
    • Overdue PM reports (PMs past scheduled date)
    •  PM cost vs. corrective maintenance cost comparison

    MRO Inventory Reports

    • Storeroom inventory on-hand by location
    • Material reorder status (items at or below reorder point)
    • Material issue history by work order Inventory valuation by storeroom

    Labor and Craft Reports

    • Labor hours by craft, employee, and work order
    • Overtime tracking
    • Labor cost by department

    Purchasing and Contracts

    • Purchase order status and approval workflow reports Contract utilization and expiry reports
    • For a maintenance team doing basic Maximo reporting, these standard outputs cover a reasonable range of needs.

    Where Maximo’s Native Reporting Breaks Down

    Here is where most Maximo users hit the wall. The standard BIRT reports cover individual transaction lists well. They handle basic status and summary views. What they don’t handle well is the analytical, cross-functional, trend-based reporting that maintenance leaders and executives actually need to manage operations and make decisions.

    Asset Downtime Analysis Knowing that a piece of equipment had a work order yesterday is easy. Knowing how much downtime that asset has accumulated over the past 12 months, how that compares to similar assets in the fleet, and whether the downtime trend is improving or worsening — that requires cross-work-order analysis that Maximo’s standard reports do not produce in a usable format. This is the most common custom report request from manufacturing and utility Maximo users.

    MRO Inventory Aging Maximo tracks what’s in the storeroom. It does not produce a meaningful inventory aging report — showing how long each item has been in stock, which items have had zero issues in the past 90 or 180 days, and what the estimated value of slowmoving and obsolete MRO inventory is. This is the inventory aging problem that exists in every inventory system, and Maximo is no exception. The data is there. The native report isn’t.

    Cross-Work-Order Labor Reporting How much total labor was applied to a specific asset over its lifetime? What is the labor cost breakdown by craft across all work orders in a

    facility? Which technicians are generating the most overtime hours, and on which asset classes? These multi-work-order aggregate questions require queries that join work order, labor transaction, and asset data across thousands of records — something that requires custom SQL against the Maximo database, not a standard BIRT report.

    Mean Time Between Failures (MTBF) and Mean Time to Repair (MTTR) MTBF and MTTR are the two most fundamental reliability metrics in asset management. Maximo captures the data needed to calculate both — failure dates, work order start and complete dates, asset location. But Maximo does not produce MTBF or MTTR calculations natively. Every Maximo shop that tracks these metrics has built them outside the standard report library.

    Maintenance Backlog Age Distribution How old is the current open work order backlog?

    What percentage of open work orders are more than 30 days old? More than 90 days? Which asset types and locations are generating the most aging backlog? This kind of backlog analysis — which directly informs staffing decisions and maintenance resource allocation — is not available from standard Maximo reports.

    Executive Dashboards and KPI Scorecards Maintenance directors, facilities VPs, and plant managers need a visual dashboard — not a BIRT report list. They want to see work order completion rate vs. target, PM compliance rate by facility, asset availability percentage, and maintenance cost per unit on a single screen that refreshes automatically. Maximo’s built-in dashboard capability is limited, and the standard BIRT reports are not designed for executive visual consumption.

    Multi-Site and Multi-Facility Consolidated Reporting Organizations running Maximo across multiple facilities or business units need consolidated reporting — total maintenance spend across all sites, PM compliance by facility compared side by side, asset downtime ranked across the fleet. Standard Maximo reporting is site-centric. Cross-site aggregation requires a reporting layer outside Maximo.

    The Three Real Options for Better Maximo Reporting

    When standard Maximo BIRT reports aren’t enough, there are three genuine approaches.

    Each has a different scope, cost, and technical requirement.

    Option 1: Custom BIRT Reports Within Maximo

    What it is: Building new .rptdesign BIRT report files connected to the Maximo database and deploying them within Maximo’s Report Administration module — so users can run them from within the Maximo application, with the same security and access control as standard reports.

    How it works: A BIRT developer writes SQL queries against the Maximo Db2, Oracle, or SQL Server database, designs the report layout in the Eclipse BIRT designer, and deploys the resulting .rptdesign file to Maximo’s report server. Once deployed, the report appears in Maximo’s report library and can be run by authorized users just like any standard Maximo report.

    When this is the right choice:

    You want the report to live inside Maximo and be accessible to users without external tools

    Your database is Db2 or Oracle (where SSRS connectivity is more complex)

    The report is operational — a maintenance team or facilities manager running it on demand from within Maximo

     You want to stay within Maximo’s report administration and scheduling framework

    The honest limitation: Custom BIRT reports within Maximo share the same delivery constraints as standard Maximo reports — scheduled delivery requires Maximo’s Job Scheduler, which has a steeper configuration requirement than SSRS subscriptions. And BIRT reports within Maximo are not interactive — they are formatted document outputs, not drill-down dashboards.

    ReportingGuru builds: Custom BIRT reports deployed within Maximo — using Maximo’s database schema to build the SQL, designing the BIRT report layout, and handling the Maximo Report Administration deployment.

    Option 2: Custom SQL Reports via SSRS (Maximo on SQL Server)

    What it is: For Maximo deployments running on SQL Server as the backend database, SSRS can connect directly to the Maximo SQL Server database and build formatted reports and dashboards outside of Maximo’s application layer entirely.

    How it works: SSRS connects to the Maximo SQL Server database with read-only access.

    Custom SQL queries join the relevant Maximo tables (WORKORDER, ASSET, LABOR, MATRECTRANS, etc.) to produce the required data. SSRS report templates format the output. SSRS subscriptions deliver reports automatically by email on any schedule — daily, weekly, monthly — without any manual action in Maximo.

    When this is the right choice:

    • Your Maximo deployment uses SQL Server as the backend
    • You need automated scheduled delivery — reports in inboxes without anyone logging into Maximo
    •  The audience includes people who don’t have Maximo logins (executives, finance teams)
    • You need formatted management-quality reports — not raw data lists

    Key advantage: SSRS subscriptions handle scheduled delivery far more cleanly than Maximo’s Job Scheduler. A weekly work order cost summary or a monthly PM compliance report that goes to the maintenance director and plant manager automatically is straightforward to configure in SSRS.

    ReportingGuru builds: SSRS reports connected directly to the Maximo SQL Server database — asset downtime summaries, labor utilization reports, MRO inventory aging, maintenance backlog reports — delivered automatically on schedule to the right people.

    Option 3: Power BI Dashboards Connected to Maximo Data

    What it is: Building Power BI dashboards connected to Maximo’s underlying database — via SQL Server direct connect (for SQL Server deployments), ODBC (for Db2 and Oracle deployments), or through a SQL Server intermediate staging database populated from Maximo via ETL.

    How it works: A SQL Server data model (or direct database connection) feeds Power BI’s data model layer. DAX measures calculate MTBF, MTTR, PM compliance rate, work order backlog aging, and asset cost metrics. Power BI dashboard pages surface these KPIs in interactive visual formats — trend charts, facility comparison grids, heat maps by asset class, and drill-through from summary to work order detail.

    When this is the right choice:

    • You need interactive executive dashboards — not formatted document reports
    • The audience is maintenance directors, facilities VPs, and plant managers who want visual KPI monitoring
    • You need cross-facility consolidated views
    • You want to combine Maximo data with data from other systems (financial systems, HR, project management)

    The honest limitation: Power BI requires licensing (Pro at $14/user/month for sharing) and requires someone to maintain the data model as Maximo schema changes or new metrics are added. It is the best tool for ongoing analytics and executive visibility — not for onetime formatted report delivery.

    ReportingGuru builds: Power BI dashboards connected to Maximo data — MTBF/MTTR trend dashboards, PM compliance scorecards, asset cost analytics, and multi-facility maintenance KPI views.

    What Most Companies Get Wrong About Maximo Reporting

    They try to build everything inside Maximo. Maximo is an excellent EAM application. It is not a reporting platform. Trying to get executive dashboards, scheduled email delivery, and cross-system analytics out of Maximo’s native tools is fighting the tool. The right architecture uses Maximo as the data source and a purpose-built reporting tool — SSRS, BIRT externally, or Power BI — as the reporting layer.

    They export to Excel and rebuild the analysis every week. This is how most maintenance teams manage the gap between what Maximo produces and what they actually need — manual exports, pivot tables, and formula-driven summaries rebuilt every reporting cycle. It works until the person who maintains the Excel model is unavailable, or until the report volume grows beyond what manual assembly can sustain.

    They think custom BIRT reports require IBM Professional Services. This is the single biggest misconception in the Maximo reporting space. IBM offers Maximo customization services, but custom BIRT reports do not require IBM’s involvement. Any BIRT developer with Maximo database knowledge can build, test, and deploy custom BIRT reports to a Maximo instance. The barrier is Maximo-specific database knowledge — not IBM access.

    They don’t know their Maximo runs on SQL Server, which changes everything. Many Maximo administrators don’t realize that their Maximo deployment runs on SQL Server rather than Db2 or Oracle. When Maximo runs on SQL Server, the custom reporting options expand significantly — SSRS connects natively, Power BI connects directly, and the entire Microsoft reporting ecosystem becomes available without complex database gateway configuration.

    They calculate MTBF and MTTR in Excel when the Maximo database already has everything needed. MTBF and MTTR calculations are trivial SQL queries against Maximo’s WORKORDER and FAILURECODE tables — but because Maximo doesn’t produce these natively, most shops maintain them manually. Building these as custom BIRT or SSRS reports eliminates a recurring manual calculation that should not exist.

    The Maximo Reports Maintenance Teams Actually Ask For

    Based on the custom Maximo reporting requests we see most often, here are the reports that maintenance teams need and Maximo’s standard library doesn’t cleanly provide:

    Asset Reliability Dashboard — MTBF by asset class, failure trend over 12 months, top 10 most-failed assets by work order count and cost. Required by every reliability engineering team, available from zero Maximo standard reports.

    PM Compliance Detail Report — Not just the overall PM compliance rate, but compliance rate by asset class, by location, by technician, and by PM type — with overdue PM details showing days overdue and responsible technician. Maximo has partial versions of this; a complete version requires custom development.

    Maintenance Cost by Asset Lifecycle — Cumulative maintenance spend per asset from commissioning to current date, compared against asset replacement value, to support repair-vs-replace decision making. This is a multi-year aggregation across all work orders for each asset.

    MRO Inventory Aging Report — Items in the storeroom with no material issues in 90, 180, or 365 days — quantity on hand, unit cost, and extended value — to support storeroom optimization and obsolete inventory write-down decisions. Identical in concept to the inventory aging reports built for distribution and manufacturing ERPs.

    Work Order Backlog Aging — Open work orders stratified by age (0–7 days, 8–30 days, 31– 90 days, 90+ days) by location, craft, and priority. The maintenance equivalent of an AR aging report — same concept, different operational context.

    Contractor vs. In-House Labor Analysis — Comparison of maintenance work performed by in-house technicians vs. contractors, by asset class and location, over a trailing period — supporting make-vs-buy decisions for maintenance strategy.

    FAQ

    What database does IBM Maximo use for reporting?

    IBM Maximo supports three backend databases depending on the deployment: IBM Db2 (IBM’s native database, most common in older enterprise deployments), Oracle Database, and Microsoft SQL Server. The choice of backend database significantly affects custom reporting options. Maximo on SQL Server has the broadest custom reporting ecosystem — SSRS, Power BI, and any ODBCcompatible tool can connect directly. Maximo on Db2 or Oracle typically requires BIRT for in-application reporting or ODBC-gateway connections for external tools.

    What is BIRT and how does it work in Maximo?

    BIRT (Business Intelligence and

    Reporting Tools) is an open-source Eclipse-based report generation framework that serves as Maximo’s native reporting engine. Maximo’s built-in reports are BIRT .rptdesign files that connect to the Maximo database and generate formatted output in HTML, PDF, XLS, and other formats. Custom BIRT reports can be built by BIRT developers with Maximo database knowledge and deployed through Maximo’s Report Administration module, where they appear alongside standard reports for authorized users to run. IBM does not need to be involved in custom BIRT report development.

    Can you build custom Maximo reports without IBM Professional Services?

    Yes. Custom BIRT reports, SSRS reports, and Power BI dashboards connected to Maximo’s database do not require IBM’s involvement. What they require is: knowledge of the Maximo database schema (the table and column names where work order, asset, labor, and inventory data live), proficiency in the appropriate reporting tool (BIRT designer, SSRS, or Power BI), and read-only database access. Independent reporting consultants and firms — including

    ReportingGuru — build and deploy custom Maximo reports regularly without IBM Professional Services.

    What is MTBF and how is it calculated from Maximo data?

    MTBF (Mean Time Between Failures) measures the average time between equipment failures — calculated as total operating time divided by number of failures for a given asset or asset class over a defined period. In Maximo, failure events are recorded as work orders with failure codes. MTBF is calculated by querying the WORKORDER table for work orders with failure-related work types, grouping by asset, and dividing total operating time (derived from failure dates and repair completion dates) by failure count. Maximo does not calculate MTBF natively — it requires a custom SQL report or BIRT report built on the Maximo WORKORDER and ASSET tables.

    What is the difference between custom BIRT reports and SSRS reports for Maximo?

    Custom BIRT reports are deployed within the Maximo application — users run them from Maximo’s report library, they respect Maximo’s security model, and they use Maximo’s report scheduling framework. They are the right choice when you want reports integrated into the Maximo user experience and accessible to maintenance teams inside the application. SSRS reports connect to Maximo’s SQL Server database from outside Maximo and can be delivered automatically by email on a schedule — making them better for management reporting, executive delivery, and scheduled operational summaries that need to reach people who don’t log into Maximo daily.

    Can Power BI connect to IBM Maximo?

    Yes. For Maximo on SQL Server, Power BI connects directly to the Maximo SQL Server database. For Maximo on Db2 or Oracle, Power BI connects through ODBC drivers or through an intermediate SQL Server staging database populated via ETL from Maximo. Once connected, Power BI can calculate MTBF, MTTR, PM compliance rates, asset cost trends, and work order backlog metrics using DAX measures, and surface them in interactive dashboards for maintenance directors and executives.

    What Maximo reports should a maintenance team prioritize first?

    The highest-value first custom reports for most Maximo shops are: (1) asset downtime and MTBF by asset class — the reliability analysis that drives maintenance strategy; (2) PM compliance detail by facility and technician — showing whether preventive maintenance is actually being performed; (3) work order backlog aging — how old is the open work order queue; and (4) MRO inventory aging — what storeroom inventory hasn’t moved in 90+ days. These four reports answer the questions that maintenance directors ask most often and that Maximo’s standard library answers least well.

    Related Pages

         IBM Maximo Reporting Services — Our Maximo reporting service page — custom BIRT reports, SSRS, Power BI, and database-connected reporting for all Maximo versions.

         BIRT Report Development — Our dedicated BIRT service page — building and deploying custom BIRT reports for Maximo and other BIRT-based enterprise applications.

         SSRS Consulting Services — For Maximo on SQL Server — scheduled, formatted report delivery without staying inside the Maximo application.

         Power BI Development — Interactive maintenance KPI dashboards, MTBF/MTTR trend analytics, and PM compliance scorecards connected to Maximo data.

         Inventory & Warehouse Reporting — MRO inventory aging, on-hand, and valuation reports — the same concepts applied to Maximo storeroom data.

         Inventory Aging Reports — The inventory aging methodology directly applicable to MRO storeroom analysis in Maximo.

         AR Aging Reports — Work order backlog aging uses the same bucket-stratification concept as AR aging — same analytical approach, different operational context.

         How to Automate Business Reports — Moving from manual Maximo report runs and Excel exports to fully automated scheduled reporting.

         SQL Server vs Excel for Reporting — If your team exports Maximo data to Excel weekly, this covers when and why to move that process to SQL Server.

         Custom Business & Enterprise Reporting — The full picture of what a custom Maximo reporting engagement looks like.

    External Resources

         IBM Maximo Application Suite Documentation — Official IBM documentation for Maximo Application Suite including reporting configuration and BIRT report administration.

         BIRT Project Eclipse Foundation — The official open-source BIRT project page — documentation, downloads, and community resources for BIRT report development.

         Maximo Community (IBM TechXchange) — The official IBM Maximo user community — useful for database schema questions and reporting configuration guidance.

    Need Custom Maximo Reports Built?

    Whether you need custom BIRT reports deployed inside Maximo, SSRS reports delivering maintenance summaries automatically on a schedule, or a Power BI dashboard giving your maintenance director real-time reliability KPIs — we handle the database schema knowledge, the report development, and the deployment.

    No minimums. No retainers. No up-front cost. US-based team. Same-day responses.

    Maximo Reporting Services BIRT Development Services Contact us or call 1-800921-4759

    Share this post:

    Fill in Your Information Below to Speak with a Reporting Expert (not a Salesperson)
    Scroll to Top

    Free Analysis & Estimate

    Fill out the form to speak with A Reporting Expert for a Free Analysis.