Infohub Core Certification Project Guide (Clone 2)
Welcome to the Infohub Core Certification Guide!
Table of Contents
InfoHub Event and Measure Definitions
Template Build: Production Events and Measures
Introduction
Welcome to the Flow Information Platform Core Certification! Congratulations on beginning your Core Certification journey. This program is designed to ensure that you can configure and implement Flow InfoHub to support real industrial operations. The skills you develop here reflect the expectations placed on professional engineers in the field.
Important: This is not a 20 minute exercise. This may take 8 or more hours to complete. The test can be completed in less time. Just be sure to check your answers and configuration before completing.
Prerequisite Knowledge
-
Completing the in-person Flow Core training or the online Flow MasterClass.
- Basic Understanding of SQL
- If you haven't already, Download Flow
Highly Recommended: Completing the online Flow Core Training and Flow Advanced Training
You can utilize the online Knowledge Base. Or email us for help with the test.
Rules
- To pass, you must achieve a score of 100%.
- You will have a maximum of 3 months to submit your project from the time the certification was requested.
- If your submission fails, you will be given feedback and two opportunities to correct and re-submit. After the two allowed attempts, you may retake the certification after 30 days.
- You must pass to receive a Certification status.
- You must use tags to retrieve data from Data Sources.
- You must use templates. Please see the template sections listed under each task.
- Likewise, you must use tags for your Event triggers and for your retrieved Event Attributes.
- You must utilize InfoHub Templates. All Measures in the model must be derived from a Template.
- You are not allowed to duplicate work from your team members. This is your work and yours only.
Use Case
Important: You will use The Juice Factory Dataset, The Flow Objective KPI Definition Core Certification Excel Spreadsheet for KPIs, and the SQL Model Import for this use case. Please be sure to download all before proceeding. These resources are imperative for your success.
Your client for this project is the American Corporation Manufacturing Everything (ACME). Specifically, one of their many beverage production facilities. You are now the engineer responsible for delivering this solution.
You will build a standardized information and context layer using Infohub for their Engineering, Operations, and Production teams.
They are looking for a scalable information platform that unifies the data from multiple areas. The final project will track product and production context over time, and provide meaningful KPIs to operators, supervisors, and managers across multiple departments. InfoHub will serve as the foundation for transforming raw equipment data into information that can guide decisions and improve performance.
For an overview of the ACME process and areas, reference The Juice Factory explainer article.
With all of the housekeeping out of the way, you are ready to proceed with your Core Certification, we wish you the best of luck and are confident you will be successful!

Platform Setup
For this specific project, we have provided two data sources that you will use. Both are tables in a SQL database that will be populated by an InfoHub metric that you must deploy. We have already created all the necessary mechanisms to create the database and backfill the data into it, and of course, we are using Flow InfoHub to accomplish this task. Don’t worry, you don’t have to build that part, we’ve provided an InfoHub model for you to import. You will just need to do some basic configuration. Let’s get started.
- Create a new Flow InfoHub instance using the latest public release.
- Configure the Flow Server to use port 8081 as required by the IT department of Core Printers.
- Import the InfoHub model named Flow Core Certification – Base Import Model.flowMdl into your InfoHub instance. This file should have been downloaded directly from the Flow Training Academy website.
- After the import is complete, configure the imported Data Source named Flow as follows:
- Change the Server property to be the same machine name as the Flow instance you created in Step 1
- Change the Database to the same as your Flow database name, as configured in Step 1
- Use the Test option to confirm connectivity, and save your configuration
- Deploy your platform
- Deploy your Data Engine
- Assign the Flow Data Source to your platform
- Deploy the Flow Data Source
- From your Model, navigate to Core Printers/System metric and deploy the Database metric along with its two contained measures.
- Confirm that a new SQL database named Integration is now present on the same SQL Server as your Flow platform and that it contains the tables HistoryValues and Product.
- Verify that the Product table contains six product entries and HistoryValues contains simulated time series data for the tag name 101-FT-001.PV. (You can use SSMS or another SQL management tool.)
- Deploy Flow Simulator for tag history
- Select Data Tab in right menu
- Right click Data Sources
- Hover over New in menu
- Hover over Additional Resources in dropdown
- Select Flow Simulator
- Deploy
Additional Resources:
Configuring the Flow Bootstrap Service
IMPORTANT: For this project to work, you will need to leave the System folder deployed at all times and of course, do not delete it or any of its metrics.
Maintenance Configuration
- Configure data retention to maintain platform performance while meeting certification requirements.
- Events: retain 90 days
- Minutely data: retain 60 days
- Hourly data: retain 90 days
- Daily data: retain 360 days
- All other intervals: retain indefinitely
- Schedule daily backups of the Flow database.
- Set system maintenance to be executed at 3:00AM.
- Verify that no maintenance schedules conflict with the typical production runtime of the simulated plant.
- Test the purge and maintenance configuration by monitoring the “Maintenance” logs to ensure it is running without errors. You can monitor using the View menu.
- Confirm that the purge configuration does not accidentally remove required certification data before submission.
- After validation, finalize deployment by confirming:
- Backup schedule active
- Maintenance trigger active
- Retention rules reflect the values listed above
Tips:
-
Automating backups reduces the risk of data loss and ensures recoverability during certification review.
- Keeping maintenance outside production hours prevents delays in data ingestion and notification processing.
Additional Resources:
For how long is data stored in Flow?
Calendar configuration
ACME desires to represent their calendar periods as follows:
-
A 24-hour day begins at 8:00AM. Three shifts in total.
- First Shift: Starts at 8:00AM (08:00) and ends 8 hours later.
-
- Second Shift: Starts at 4:00PM (16:00) and ends 8 hours later.
-
- Third Shift: Starts at 12:00AM (00:00) and ends 8 hours later.
- The week starts on Sunday.
- The year begins in April.
Additional Resources:
How do I configure my calendar in Flow
Template Mandate
Templates must be used in creating and instantiating all Tags, Measures, and Events for this project. Nothing in the Model can be created without being linked to a Template.
Begin by reviewing the KPI and Event sheet to identify repeated logic across Fillers 1 and 2. Templates are required to avoid duplicated configuration.
All tag retrieval must use Model Attributes for tag addressing, allowing the same logic to be reused for both fillers.
Additional Resources
Template Article:
Hint: No model measures are allowed outside Flow Templates. All logic must originate from the template and be instantiated for each filler.
Infohub Event and Measure Definitions
We have provided an overview of all of the required Measures and Events as an Excel worksheet that you can download below. We will also provide more in depth detail for each of the Measures and Events, organized by template component as you progress through the article.
Advanced or experienced Infohub users will likely only need the Excel worksheet to progress through quickly.
Download the Event and Measure Definition File
template BUILD: Utilities
Raw Water
Within a template, build and deploy a Raw Water Measure within a Utilities folder. This KPI helps ACME measure and ultimately reduce water loss by reporting how much water is consumed over time.
What you must do
ACME needs to aggregate their water usage into an hourly time weighted average. They then want to roll that average up into Day-to-Date (DTD), Shiftly, and Daily averages as well.
Requirements
You will retrieve the raw Flow transmitter data for the main water supply meter from the Integration database. The value you need is stored in the HistoryValues table and is represented by the tag 010-FT-001.PV.
Once your Tag is retrieving data correctly, you will build an Hourly Raw Water Measure using the Time Weighted Average aggregation.
Your SQL query must include the boundary value. Time-weighted averaging depends on it. You will add the boundary by using a UNION with SELECT TOP 1 to return the last value before the PeriodStart.
Additional Resources:
Data Source - Microsoft SQL Database
Completion check
You should verify the following before moving to the next objective:
- Raw Water is shown in kiloliters (kl)
- Measures are tag-based and are Hourly, Day to Date (DTD), Shiftly, and Daily measures
- The SQL query includes the boundary value
- Results align to calendar boundaries with no gaps at the start of each period
Once verified, the Raw Water KPI objective is complete. Continue to the next requirement for the project. If something looks incorrect in your results, revisit your Tag. Two common issues are the boundary value or the SQL query at this stage.
template BUILD: TAED
Target, Actual, Efficiency, and Downtime (TAED), is a core performance framework used in manufacturing analytics to standardize how production results are measured and compared. By structuring data around planned targets, actual output, calculated efficiency, and categorized downtime, TAED provides a consistent foundation for Statistical In Control (SIC) monitoring, variance detection, and root-cause analysis. This structure ensures performance metrics are repeatable, comparable, and actionable across lines, assets, and time periods.
Daily Production Target
You are responsible for building the Daily Production Target template within a folder labeled TAED. This KPI allows ACME to track whether the filling lines (Filler 1 & 2) are meeting their daily production goals. This forms the basis for short-interval control and supports rapid adjustments during the production day.
What you must do
The Operations department wants to track targets for the fillers. You will create a Manual Measure that stores a universal daily Production Target for both fillers. The initial value is 840,000 bottles per day, and the value must be editable in an InfoHub Limit Form so that Operations can update future targets without changing the model. The desire is to adjust this target in a single location and have it applied to both fillers.
The customer needs to set these targets at least 30 days in advance so a future visualization can implement a target line across upcoming production days rather than only past performance.
Requirements
-
The Production Target is a Daily KPI and UOM is bottles
-
It must be implemented as a Manual Measure, not a Retrieved Measure, and not a direct calculation
-
The Manual Measure must expose an Infohub Form that allows editing of the target value
-
Supports at least 30 days of projected future targets
-
Executed using a template
Additional Resources:
Why would I use Manual Measures?
Completion check
Verify the following before moving to the next task:
- The value is editable through a Limit Form rather than the Config Model editor
- The Manual Measure contains at least 30 days of future target values
Hourly Production Target
You are responsible for building the templatized Measure Hourly Production Target within the TAED folder. This KPI provides short-interval visibility so ACME can assess target attainment during the day rather than waiting for end-of-day results.
What you must do
Operations wants to compare hourly production performance against a rolling target. You need to translate the Daily Production Target into an hourly value so that the hourly target updates automatically when the daily value is scaled up or down. ACME wants this hourly target to project at least 24 hours into the future so they can verify target attainment.
Requirements
- You have built a Daily KPI and UOM is bottles
- Must be a Calculated Measure, not Manual and not Retrieved
-
Uses the existing Daily Production Target value and transforms it into an evenly distributed hourly goal
- Must project 24 hours of future projected values
Additional Resources:
How do I configure Limits in a measure?
Completion check
Verify the following before moving to the next task:
- The value is calculated using the Daily Production Target and is evenly distributed across the entire day
- The Data Source Viewer and Table view within Infohub Config both display hourly values without gaps
Actual Production
Within the TAED folder, create an additional Measure template that can be used to compare actual production of both fillers to hourly targets and monitor daily target attainment.
What You Must Do
Retrieve raw data from the Simulator to create an hourly Measure. Use the tag FL###.BottleCount for both fillers. Apply the Counter aggregate, and then roll up the results into Day-to-Date (DTD), Shiftly, and Daily Measures. Use the Measure Hourly Production Target to set a Limit Target for this Measure.
Requirements
-
Use the Counter aggregate
-
Each rollup is progressively aggregated from the previous time interval
- Ensure the target is applied to all Measures
Additional Resources:
Measure as a Target - https://support.flow-software.com/hc/en-us/articles/6896845503762-Tutorial-18-Create-a-Measure-Limit
Completion check
Verify the following before moving to the next task:
-
'Pop Out' the Data Source Preview and add all measures
-
Visually inspect the data and patterns for validity
- Ensure you have a target that is linked to the Measure 'Hourly Production Target'
Total Runtime
It is imperative to understand the time each filler spends running per hour, shift, and day. Build a Measure within the TAED template that accomplishes this.
What You Must Do
Using templates, retrieve the FL###.State tags to perform a Time In State aggregation that isolates and sums the total runtime (integer value of 20) for the hour for both fillers displaying the total in hours. Then sum the results and roll up into Day-to-Date (DTD), Shiftly, and Daily Measures. Use hours as your UOM.
Requirements
-
You must use a Daily Measure and the Time In State aggregate
- Convert the default time scale of milliseconds to hours using the field Scaling Factor
- Sum the Hourly Measure into Day-to-Date (DTD), Shiftly, and Daily totals.
Additional Resources
Scaling Factor - https://support.flow-software.com/hc/en-us/articles/360011628159-Aggregated-Measures
Completion check
Verify the following before moving to the next task:
- Time in State uses milliseconds. Be sure to convert properly in hours for all Measures.
- Hourly value should never be greater than 1
Equipment Efficiency
Measures are needed to assess efficiency compared to the time available for the Operations department.
What You Must Do
Build an hourly KPI by calculating the Runtime and the Available time. This will measure to meet short interval control efficiency targets. Use % for the UOM for both fillers. The Target and Lower Limits need to be set to 85%. You have to re-do the calculation for the Shiftly and Daily intervals. You cannot use measure aggregations. Available time will be the interval duration, but you may have scenarios where a production calendar specifies how much of the hour/day/interval is available. Therefore, the denominator will need to be adjusted accordingly.
Requirements
- Define Limits to evaluate the Measure
- These limits must also be editable from a Limit Form
Additional Resources
Completion check
Verify the following before moving to the next task:
-
Calculated expression is % of Runtime / Available time
- You cannot use measure aggregations.
Total Idle Downtime
ACME Operations needs to reduce hourly downtime. It will need to measure the total idle time.
What You Must Do
Use an hourly interval of time for your templates and retrieve the FL###.State tags. The state of both tags needs to be equal to 0 and the aggregation must be configured to be a Time in State. Once this is accomplished, roll up the measures to create Shiftly, Day-to-Date (DTD), and Daily measures. Remember, Time in State returns milliseconds. Be sure to convert to the required UOM.
Requirements
- Hourly interval of time
- State set to 0 for tags
- Time in State configuration
Additional Resources
Completion check
Verify the following before moving to the next task:
- Time in State uses milliseconds. Be sure to convert properly to hours for all Measures.
TEMPLATE BUILD: Production Per Product
Production Run Event
Create an event that uses the Filler state to determine the start and stop of the Event. Ensure you create an Event Attribute that associates the SKU with each batch.
What You Must Do
You will Use the FL###.State tag for both the Start and Stop trigger for the event. The start of the trigger will be set to 10. The end trigger will have a state equal to 30. You will associate the FL###.Product tag so that the Event looks up the retrieved attribute whenever the start of an event is triggered.
Requirements
-
Use the FL###.State tag for both the Start and Stop trigger
-
Start the event when state is equal to 10
-
Stop the event when state is equal to 30
- Create a Retrieved Attribute and associate the FL###.Product tag for lookup when the event starts
Additional Resources:
Adding Event Context to a Measure
Completion check
Verify the following before moving to the next task:
-
Confirm that the Events trigger correctly when the filler transitions to production and closes correctly when production stops by overlaying the state tag with your event records in a Data Source Preview pop out
- All attributes populate during the runtime of the Event.
Total Good Production
The ACME Production department wants to determine how much of their product is good. You will need to build a KPI that measures the Daily production per product.
What You Must Do
Create a Daily measure that retrieves the FL###.BottleCount and rolls this into a Week-to-Date (WTD) and a Weekly measure. Be sure to use the Event and Attribute context for this KPI.
Requirements
- UOM is bottles
-
Daily measure using Event and Attribute context
- Week-to-Date and Weekly roll ups
Total Bad Production
ACME also wants the ability to evaluate the count of bottles that has been rejected.
What You Must Do
Use the FL###.BottleCount.Rejects to create a Daily measure that is retrieved from the Simulator data source. This will count the bad production per product for the Production department. Use your Event and Attribute context to count the rejects per product.
Requirements
- UOM is bottles
- Daily measure using the Event and Attribute context
- WTD and Weekly roll ups
Total Throughput
The Production department for ACME needs a way to calculate and reduce waste for the total throughput per product.
What You Must Do
You will need to create a calculation to target the measures for a Daily KPI. This is the sum of the rejects and good bottles. Once created, you can roll up the measure to a Week-to-Date and Weekly measure. Don't forget your Event and Attribute context for this calculation.
Requirements
-
UOM is bottles
- Calculated expression of Good Production + Bad Production
- Use Limits with a Target Measure configuration
- Daily measure using the Event and Attribute context
- WTD and Weekly roll ups
Line Target
The Production department wants to track the production per product target.
What You Must Do
You will create a Manual Measure that stores a daily target. The initial value is 840,000 bottles per day. This line target needs Week-to-Date (WTD) and Weekly roll ups. Include the Event and Attribute context.
Requirements
- Manual Measure
-
UOM is bottles
-
Daily measure using the Event and Attribute context
- WTD and Weekly roll ups
Production Run Count
The Production department wants a run counter to ensure on time delivery.
What You Must Do
Retrieve the FL###.State tag to create a Daily measure. This will help ACME get a better understanding of the batch count per product. The state of the tag needs to equal 20 with an aggregation configured to Count. Once complete, roll it up to Week-to-Date and Weekly measurements. Use the Event and Attibute context to measure per product.
Requirements
-
UOM is batches
-
Daily measure using the Event and Attribute context
- WTD and Weekly roll ups
- State equal to 20 for the tags
Total Duration Per Product
The ACME Production department wants to see a total for the run duration per product per hour.
What You Must Do
Create a Daily measure that retrieves the FL###.State tags. Measures will need to be set to equal 20 and the aggregation set to Time in State. Roll this measure into a Week-to-Date and a Weekly measure.
Requirements
-
UOM is hours
-
Time in State uses milliseconds. Be sure to convert properly to hours for all Measures.
- WTD and Weekly roll ups
- State equal to 20 for the tags
Water Consumption
ACME desires to reduce the cost per unit and measure how many liters of water are being consumed per bottle.
What You Must Do
Help ACME understand intensity of production by creating a calculation that measures per day with Week-to-Date and Weekly roll ups.
Requirements
-
UOM is kl/bottle
- Calculated expression of Main Water Meter Supply / Throughput
- WTD and Weekly roll ups
- Calculated, not Retrieved or Manual
Dashboard Build
- Create three dashboards to visualize the Utilities, TAED, and Production KPIs. The purpose of each dashboard must be clear and distinct.
- Select visuals (charts, forms, etc.) that communicate the KPI story quickly. The viewer should understand the intent of the visualization in 30 seconds or less.
- Plot targets as a line across production values to allow immediate comparison between expected and actual performance.
- Add titles and descriptions to every visualization to explain what is being shown and why it matters.
- Use Limits on Efficiency and other KPIs where thresholds are defined. Limit colors must match the status conveyed by the KPI.
- Use no more than 12 colors across the entire dashboard. Colors should add clarity, not distraction.
- Add filters only when they support the intended story and do not confuse or hide meaning.
- Include a callout or summary section that highlights the main takeaway of the dashboard (example: “Efficiency dropped during Product C runs due to extended Awaiting Transfer periods”).
- TAED dashboards must use the model attributes and templates to automatically reflect both Filler 1 and Filler 2 without manual rework.
- Production dashboards must show Production vs Target and provide visibility into Rejects and Efficiency.
Additional Resources:
Completion check
Verify the following before moving to the next task:
- Dashboards load without errors or missing values.
- KPIs update correctly when switching between Filler 1 and Filler 2.
- Target lines, limits, and units of measure are clearly visible.
- Viewers can interpret the dashboard’s purpose within 30 seconds.
- No duplicated measures or manual wiring that violates the template logic.
Submit your Test
Great! You've double checked your work, you've carefully reviewed the customer's objectives, and you've designed an Infohub system that you deem worthy of a Infohub Certified Status.
Go back to the Test Submission tab in the Infohub Certification portal for the final project submission instructions and details.
Here is a screenshot of the tab you will select within the portal (bottom left once you are in the Infohub learning portal).

If you need help along the way, email us for help.