When a business stakeholder comes to a Workday team asking for "a new tracker, dashboard, or app," the first architectural decision you make determines whether the project takes twenty minutes or three weeks: should you build it as a Workday Custom Report (Advanced, Matrix, or Composite) backed by calculated fields, blend external data in Workday Prism Analytics, or build an interactive Workday Extend application with its own Custom Business Objects (CBOs)? A custom report is the right answer whenever the data already lives inside Workday core business objects and users only need to read, filter, summarize, or export it; you step up to Prism Analytics when high-volume non-Workday data must be joined and governed inside Workday, and you build a Workday Extend app when users need a tailored, multi-step screen that captures new 1:Many records, orchestrates external APIs, or drives its own approval workflow.
The three architectural patterns side by side
Before writing a single calculated field or opening App Hub, run the requirement against this comparison matrix:
| Architectural Dimension | Workday Custom Report (Advanced / Matrix / Composite) | Workday Prism Analytics | Workday Extend App (PMD / CBO / Orchestrate) |
|---|---|---|---|
| Architectural DimensionPrimary Purpose | Workday Custom Report (Advanced / Matrix / Composite)Operational reporting, drill-down charts, financial statements, and RaaS integration feeds over native Workday data. | Workday Prism AnalyticsIngesting, transforming, and joining external third-party datasets with native Workday HCM or Financial data for governed analytics. | Workday Extend App (PMD / CBO / Orchestrate)Interactive digital experiences where users create, update, review, and route records inside Workday with custom UI and workflows. |
| Architectural DimensionWhere the Data Comes From | Workday Custom Report (Advanced / Matrix / Composite)Core Workday Data Sources (Workers for HCM Reporting, Journal Lines, etc.) and existing custom objects. | Workday Prism AnalyticsExternal CSV/SFTP loads, REST APIs, cloud data warehouses, blended with Workday data sources into published Prism datasets. | Workday Extend App (PMD / CBO / Orchestrate)Native Workday APIs / WQL queries, external third-party REST APIs, and the app's own Custom Business Objects (CBOs). |
| Architectural DimensionDirection of Data Flow | Workday Custom Report (Advanced / Matrix / Composite)Read-only (plus standard related-action menus on returned business objects). | Workday Prism AnalyticsRead-only analytical consumption (published as a Prism data source consumed by Custom Reports and Discovery Boards). | Workday Extend App (PMD / CBO / Orchestrate)Read and write—users submit forms, update statuses, upload attachments, and trigger business processes or orchestrations. |
| Architectural DimensionLogic & Transformation | Workday Custom Report (Advanced / Matrix / Composite)Calculated fields (ESI, LRV, Evaluate Expression, Sum Related Instances) and report filters/prompts. | Workday Prism AnalyticsMulti-stage data pipelines: SQL-like joins, unions, group-by aggregations, and schema transformations across millions of rows. | Workday Extend App (PMD / CBO / Orchestrate)Page Model Definition (PMD) script logic, custom business processes, and Workday Orchestrate flows. |
| Architectural DimensionSecurity Model | Workday Custom Report (Advanced / Matrix / Composite)Native Domain Security Policies and constrained/unconstrained security groups on the report and its underlying fields. | Workday Prism AnalyticsPrism dataset security policies and row-level role/organization security inherited or mapped to Workday security groups. | Workday Extend App (PMD / CBO / Orchestrate)Extend Application Security domains, CBO security policies, and persona-specific page/endpoint access. |
1. When a Workday Custom Report (plus calculated fields) is enough
Roughly 70% of stakeholder requests that start with "We need a custom tool to track..." can—and should—be solved with native Workday Report Writer and well-designed calculated fields.
Stay in Custom Reports when:
- The source of truth is already in Workday. If every attribute you need lives on
Worker,Position,Job Requisition,Organization,Invoice, or an existing custom field, you do not need a new data store. Watch how kiweely builds a complete headcount and length-of-service custom report in a live tenant at https://youtu.be/iR8XsrlOMWc. - The logic is a cross-object lookup or conditional bucket. Many consultants assume a custom report cannot answer questions like "Show each worker's oldest dependent's last name" or "Bucket active headcount by tenure bands and flag managers with overdue approvals." In reality, a multi-tier chain of Extract Single Instance (ESI), Lookup Related Value (LRV), and Evaluate Expression calculated fields handles this natively inside an Advanced or Matrix report. (You can see kiweely build and verify a multi-tier calculated field on film at https://youtu.be/aHnNpdrkTdA.)
- You are combining two Workday data sources along a shared dimension. If Finance wants budget vs. actuals alongside headcount by Cost Center and Fiscal Period, a Composite Report joins multiple Matrix sub-reports cleanly without moving data outside core reporting.
- Downstream systems just need a scheduled extract. Expose the Advanced report as a web service (RaaS) or wrap it in an outbound EIB.
Where Custom Reports hit a wall
A custom report is the wrong tool when users try to use it as a spreadsheet they can type into, when
you need to join 20 million rows of external point-of-sale or badge-swipe logs that do not belong on
the Worker object, or when deeply nested calculated fields on 1:Many relationships push report
execution past interactive runtime limits.
2. When you need Workday Prism Analytics
Step up to Workday Prism Analytics when the problem is still fundamentally analytical and read-only, but the data or transformation volume exceeds what native Workday business objects should hold:
- Blending external operational data with Workday people or financial data. Suppose a healthcare
network wants to analyze nurse overtime and turnover in Workday alongside patient-acuity and
shift-scheduling logs from a third-party clinical system, secured by the hospital's existing
Workday Supervisory Organization hierarchy. Loading millions of external shift records into core
Workday custom objects would bloat the tenant; ingesting them into a Prism table and joining them
to
Workerby Employee ID keeps the core tenant clean while letting leaders view the blended result inside standard Workday reports and dashboards. - Historical snapshots and point-in-time trend tables. When you need to freeze monthly snapshot tables or pre-aggregate massive transaction tables before surfacing them in Composite or Matrix reports, Prism's pipeline stages (Filter, Join, Group By, Union, Calculated Fields) execute those heavy joins ahead of time rather than at report runtime.
Where Prism Analytics hits a wall
Prism is an analytical data hub, not a transactional application builder. It does not give employees or managers a custom form to submit requests, route approvals, or trigger real-time outbound calls to external systems.
3. When you need a Workday Extend App
Build a Workday Extend application when the requirement crosses from viewing data into capturing transactions, managing a custom workflow, or orchestrating external systems in real time.
As we detail in our guide to Workday Custom Business Objects (CBOs) vs. Custom Fields, a Workday Extend app is the right architecture when:
- Users need interactive write-back and a tailored multi-step UI. Employees, managers, or partners need a clean, guided screen inside Workday—built with Page Model Definition (PMD) or custom components—to submit conflict-of-interest disclosures, request new-hire equipment and system access, propose remote-work arrangements, or nominate peers for recognition.
- The data is 1:Many with its own lifecycle and audit trail. A worker can submit dozens of
equipment requests, tuition reimbursement claims, or compliance attestations over their career,
each moving through its own status transitions (
Draft->Submitted->Manager Approved->Fulfilled) and governed by its own Extend security domains and custom business process. - Real-time external orchestration is part of the transaction. When a manager approves a request in the app and Workday needs to immediately provision an IT ticket in ServiceNow, check inventory in an external ERP, or trigger a Workday Orchestrate flow, an Extend app handles the entire transactional loop natively.
The 4-question decision checklist for your next intake call
When a client or stakeholder brings you a new requirement, ask these four questions in order:
- Do users need to enter new records or trigger a custom approval workflow on this screen?
- Yes: Build a Workday Extend app (or configure a core business process with custom fields if it is a simple 1:1 attribute on an existing event).
- No, it is read-only visibility: Move to Question 2.
- Does all of the required data already live inside Workday core business objects?
- Yes: Build a Workday Custom Report (Advanced, Matrix, or Composite) with Calculated Fields.
- No, it requires external non-Workday datasets: Move to Question 3.
- Is the external data high-volume analytical history that needs to be joined with Workday data
and secured by Workday roles?
- Yes: Use Workday Prism Analytics and surface the published dataset in a Workday Custom Report or Discovery Board.
- No, it is a live transactional lookup or write-back for one worker at a time: Use a Workday Extend app calling an external REST endpoint or orchestration.
- Can one worker have many of these records over time, each with its own status and security?
- Yes: Model a Custom Business Object (CBO) in Workday Extend rather than crowding the
Workerobject with flat custom fields.
- Yes: Model a Custom Business Object (CBO) in Workday Extend rather than crowding the
How kiweely builds both sides of the decision in your tenant
Historically, one reason consultants tried to force everything into a custom report—or, conversely, over-scoped a full development project—was the tool gap: functional consultants knew Report Writer and calculated fields, while Extend apps required a developer fluent in AMD, PMD, WQL, and App Hub deployments.
kiweely closes that gap on your computer. Connected to your real Workday tenant through your own Workday sign-in:
- If the right answer is a Custom Report and Calculated Fields, kiweely inspects your tenant's live data sources and business objects, builds the multi-tier calculated fields and the custom report in your tenant after you approve, and verifies the output against live worker records.
- If the right answer is a Workday Extend App, kiweely designs the data model (CBOs and business
processes), pages (PMD), WQL queries, and orchestrations, has Workday validate every version,
deploys to your Development tenant once you approve, promotes through Implementation and Sandbox,
and tests the deployed app as each persona with
Start Proxyin a browser you can watch.
Watch kiweely build custom reports, calculated fields, orchestrations, and full Extend apps from start to finish on What it does.
Kiweely Personal is free for your Workday personal developer account and its tenant. Any other tenant needs a Personal licence, $99 a month, or a seat in your firm. Every new account starts with $5 of Kiweely Credits so you can try it in your own tenant today.