Custom Report Templates
Create custom Microsoft Word report templates using Monolith report variables and template syntax.
Custom Report Templates allow your organization to generate reports using your own Microsoft Word document format.
Use custom templates when your team already has a preferred report style, agency format, lab format, branding requirement, or narrative structure that you want Monolith to populate with case data.
For most standard reporting workflows, start with Monolith Case Reports. Use Custom Report Templates when you need more control over the final Word document layout, wording, structure, or logic.
Video Walkthrough
This video walks through the basics of creating and using custom report templates in Monolith.
If the video does not load, you can also watch it here:
Watch the Custom Report Templates walkthrough on YouTube
How Custom Report Templates Work
A custom report template is a Microsoft Word document that includes Monolith report variables.
When a report is generated, Monolith replaces those variables with data from the selected case. This allows you to create a reusable Word template once, then use it to generate reports from Monolith case data.
For example, a template can include values such as:
Case number
Case name
Organization information
User / examiner information
Evidence details
Acquisition details
Chain of custody information
Notes
Contacts
Other supported report variables
When to Use Custom Report Templates
Use a custom report template when you need:
A specific Microsoft Word report layout
Organization-specific wording or formatting
Agency, lab, or customer-specific report language
A report that matches an existing document your team already uses
More control over how case, evidence, acquisition, note, or custody data is displayed
A reusable template for different report types or workflows
Custom templates are powerful, but they require more setup than the standard Monolith Case Report builder.
Template Document
The template document must be a Microsoft Word document using the .docx file format.
Create your report layout in Microsoft Word, then insert Monolith variables where case data should appear.
Template Syntax
Custom report templates use placeholder variables that Monolith recognizes and replaces with case data when the report is generated.
Standard Variables
Standard variables are used for single values, such as a case number or organization name.
Example:
You can include variables directly in your Word document.
Example template text:
When the report is generated, Monolith replaces the variable with the actual value from the case.
Be mindful of spacing inside template variables. Use the variable format exactly as shown in the Template Variables documentation.
Lists and Loops
Some report data can include multiple records.
For example, a case may have one evidence item, several evidence items, or many evidence items. Because the number of items can change from case to case, templates use loops to repeat content for each item in a list.
Example:
This loop tells Monolith to repeat the content inside the loop for each evidence item selected for the report.
The above syntax will loop through a list of evidence items (stored in the "evidence" variable) and output a vertical list of evidence numbers.
Loops are a very powerful way to create complex report templates and display just about any data that you want.
A loop can be used to output information such as:
Evidence numbers
Evidence types
Item names
Manufacturers
Serial numbers
Acquisition details
Chain of custody entries
Other list-based report data
When using loops, make sure every loop has a matching end statement. A missing {% endfor %} is a common template issue.
Table Rows
Custom templates can also use table syntax to repeat rows in a Microsoft Word table.
This is useful when you want to list evidence, acquisitions, chain of custody entries, or other repeated data in a structured table format.
Table row syntax is similar to regular loop syntax, but uses special table row handling so that Monolith can repeat the row for each item in the list.
Use table rows when your report should display repeated data in columns instead of narrative text.
Given the following evidence data passed to the template from a case:
Template Syntax for table -

Generated Document Result -

The "tr" prefix denotes that we are creating a loop through table rows.
You'll notice that the table rows that have the start loop syntax and end loop syntax are not included in the final rendered table.
Using this syntax you can create tables with templated lists pulled in from Monolith.
Conditional Logic
Custom report templates can also support conditional logic for more advanced report behavior.
Conditional logic can be useful when certain text should only appear if data exists or if a specific condition is met.
Most templates only need:
Standard variables
Lists and loops
Table rows
Basic conditional logic, when needed
For more advanced template logic, start simple and test the report output as you build.
Upload or Select a Template
Custom templates can be used from the Reports tab inside a case.
To use a custom template:
Open a case.
Select the Reports tab.
Open Template Options.
Upload a new template or select an existing template.
Configure the report options.
Generate the report.
Download the generated Microsoft Word document.
Manage Existing Templates
Existing templates can be managed from Settings > Document Templates.
This is useful when you need to update a template without creating duplicate versions during testing.
A common workflow is:
Create or update the Word template.
Upload it to Monolith.
Generate a test report.
Review the Word output.
Update the template file.
Re-upload the revised version to the existing template.
Generate the report again.
This iteration process helps you refine the template until the generated report matches your desired output.
Recommended Template Building Workflow
When creating a new custom report template, start simple.
Recommended workflow:
Create a basic Word document.
Add a few standard variables, such as case number, case name, organization name, and user information.
Upload the template to Monolith.
Generate a test report.
Confirm the variables populate correctly.
Add a simple loop, such as an evidence list.
Generate another test report.
Continue adding sections, tables, and more advanced logic as needed.
Starting with a simple template makes it easier to identify syntax issues before the template becomes more complex.
Common Template Issues
If a custom report does not generate or does not display data as expected, check for common issues:
Missing spaces or incorrect formatting inside variables
Misspelled variable names
A loop that is missing its
{% endfor %}statementEvidence or other records not selected for the report
Empty values in the underlying case data
Table row syntax that is not structured correctly
Complex nested logic that needs to be simplified and tested in smaller sections
Template Variables and Examples
For a full list of supported report variables, see Template Variables.
For downloadable sample templates and examples, see Template Examples.
Best Practices
Start with a simple template and build gradually.
Test the report frequently while editing the template.
Use clear section headings in the Word document.
Keep a backup copy of working template versions.
Use loops for repeated data such as evidence items.
Use tables when repeated data should appear in columns.
Review the generated Word document before using it as a final report.
Use custom templates when the standard Monolith Case Report builder does not meet your reporting requirements.
Other Template Syntax
There is more syntax available for templates, but the items listed above are the most common. If you need help with this or have more questions, reach out to us at support@monolithforensics.com.
Last updated
Was this helpful?