Chart editor guide
Chart editor guide
You can create custom charts from GitLab data using the chart editor. In this guide, we'll guide you through the steps of creating any chart using GitLab boards as data sources.
See also these related resources
GitLab units, metrics, and properties
Screenful Knowledge base
To create your first chart, go to the Charts tab, and click Add new chart. You'll be shown the chart editor that allows creating charts from the selected data sources.
You can create custom charts from GitLab data using the chart editor. In this guide, we'll guide you through the steps of creating any chart using GitLab boards as data sources.
See also these related resources
GitLab units, metrics, and properties
Screenful Knowledge base
To create your first chart, go to the Charts tab, and click Add new chart. You'll be shown the chart editor that allows creating charts from the selected data sources.
You can create custom charts from GitLab data using the chart editor. In this guide, we'll guide you through the steps of creating any chart using GitLab boards as data sources.
See also these related resources
GitLab units, metrics, and properties
Screenful Knowledge base
To create your first chart, go to the Charts tab, and click Add new chart. You'll be shown the chart editor that allows creating charts from the selected data sources.
Select the chart type
You can select the chart type from the Chart type menu:

You can learn more about the available charts on the Charts Tour.
Select the chart type
You can select the chart type from the Chart type menu:

You can learn more about the available charts on the Charts Tour.
Select the data sources
In the Data sources menu, you can select one or more boards to be used as data sources in the chart:

You can select multiple items from this menu by picking one, then another, and so on. The list contains the GitLab boards you have imported to Screenful.
You can import more boards by selecting Data sources from the main menu:

Select the data sources
In the Data sources menu, you can select one or more boards to be used as data sources in the chart:

You can select multiple items from this menu by picking one, then another, and so on. The list contains the GitLab boards you have imported to Screenful.
You can import more boards by selecting Data sources from the main menu:

Select the unit for the chart
You can select the unit for the chart from the Unit menu. The default selection is Issues and MRs, which shows the counts as the number of issues and merge requests (you can use the filter feature to limit to either one):

You can change the unit to either Points, Hours or Time in state:

The selected unit is reflected in the chart as follows:
Issues and MRs -> Chart uses issue and merge request count as the unit (e.g. completed issues within a date range).
Points -> Chart uses estimates as the unit.
Hours -> Chart uses logged hours as the unit.
Time in state -> Chart shows timing data e.g. time in progress, lead time, cycle time.
Select the unit for the chart
You can select the unit for the chart from the Unit menu. The default selection is Issues and MRs, which shows the counts as the number of issues and merge requests (you can use the filter feature to limit to either one):

You can change the unit to either Points, Hours or Time in state:

The selected unit is reflected in the chart as follows:
Issues and MRs -> Chart uses issue and merge request count as the unit (e.g. completed issues within a date range).
Points -> Chart uses estimates as the unit.
Hours -> Chart uses logged hours as the unit.
Time in state -> Chart shows timing data e.g. time in progress, lead time, cycle time.
Select the metric for the chart
Once you have selected the unit for the chart, the next step is to choose the metric:

Pay attention to this step, as picking the wrong metric can produce undesired results. Some of these metrics require a date range, while others don't. The first three metrics show the current state, and therefore, there is no date range involved. When you select a metric that requires a date range, the date range menu appears automatically.
The selected metric is reflected in the chart as below:
Total -> The total amount of the selected unit in the selected data sources
Not started & In progress -> The amount of selected unit not completed, according to the workflow settings
In progress -> The amount of selected unit in progress, according to the workflow settings
Created (within date range) -> How much of the selected unit was created within the date range
Completed (within date range) -> How much of the selected unit was completed within the date range
Select the metric for the chart
Once you have selected the unit for the chart, the next step is to choose the metric:

Pay attention to this step, as picking the wrong metric can produce undesired results. Some of these metrics require a date range, while others don't. The first three metrics show the current state, and therefore, there is no date range involved. When you select a metric that requires a date range, the date range menu appears automatically.
The selected metric is reflected in the chart as below:
Total -> The total amount of the selected unit in the selected data sources
Not started & In progress -> The amount of selected unit not completed, according to the workflow settings
In progress -> The amount of selected unit in progress, according to the workflow settings
Created (within date range) -> How much of the selected unit was created within the date range
Completed (within date range) -> How much of the selected unit was completed within the date range
Select grouping
If the selected chart type supports grouping, the Group by menu allows the selection of the grouping criteria:

At the bottom, you'll have the time-based grouping options: day, week, month, and quarter:

Select grouping
If the selected chart type supports grouping, the Group by menu allows the selection of the grouping criteria:

At the bottom, you'll have the time-based grouping options: day, week, month, and quarter:

Learn more
Learn more
FAQ
Common questions
A data source is a GitLab board. The pricing is based on the number of boards you explicitly import to Screenful, not the total number of boards in GitLab. You can compare plans on the pricing page.
You can import data sources from all the tools we support in the same Screenful account. Learn more about managing data sources.
A data source is a GitLab board. The pricing is based on the number of boards you explicitly import to Screenful, not the total number of boards in GitLab. You can compare plans on the pricing page.
You can import data sources from all the tools we support in the same Screenful account. Learn more about managing data sources.
Yes except that you won’t be able to use data from epics or issue weights since those are available only in a paid GitLab plans.
Yes except that you won’t be able to use data from epics or issue weights since those are available only in a paid GitLab plans.
The timings are based on your workflow settings. You can learn more from the Lead Time FAQ.
The timings are based on your workflow settings. You can learn more from the Lead Time FAQ.
Yes, you can filter the data shown so that either issues, merge requests, or both are included in the stats by setting a filter.
Yes, you can filter the data shown so that either issues, merge requests, or both are included in the stats by setting a filter.
Yes, you can track GitLab epics with Screenful. You can use "Epic" as a filter in a chart. For the chart that supports grouping (bar charts, pie chart, stacked area chart), you can group data by epic. You can also filter charts by "Item type"->"Epic". That will include only epics in the chart.
Yes, you can track GitLab epics with Screenful. You can use "Epic" as a filter in a chart. For the chart that supports grouping (bar charts, pie chart, stacked area chart), you can group data by epic. You can also filter charts by "Item type"->"Epic". That will include only epics in the chart.
Yes, you can group and filter data by iterations. You can also create a burndown chart for tracking a Gitlab iteration.
Yes, you can group and filter data by iterations. You can also create a burndown chart for tracking a Gitlab iteration.
You can manage the subscription in the billing settings. The location of the billing settings depends on the product you are subscribed to. You can learn more by following the instructions in this guide.
You can manage the subscription in the billing settings. The location of the billing settings depends on the product you are subscribed to. You can learn more by following the instructions in this guide.
We do not make changes to your data. We only read it via the API of your tool. Screenful is only for reporting and analytics. It does not update any data within your tools.
We do not make changes to your data. We only read it via the API of your tool. Screenful is only for reporting and analytics. It does not update any data within your tools.
All data sources are synced automatically once per hour. Changing settings or configuration will trigger additional sync so your data is at most one hour old. You can sync data manually at any time in the sync settings.
All data sources are synced automatically once per hour. Changing settings or configuration will trigger additional sync so your data is at most one hour old. You can sync data manually at any time in the sync settings.
Yes, you can create charts with a prompt and ask questions about a chart by using the Screenful AI Assistant. The assistant combines the leading LLMs with advanced multidimensional data analytics to help you understand and interpret your data.
Yes, you can create charts with a prompt and ask questions about a chart by using the Screenful AI Assistant. The assistant combines the leading LLMs with advanced multidimensional data analytics to help you understand and interpret your data.
What is the difference between these metrics?
Reaction time = time before the work was started
Cycle time = time from start to completion
Lead time = Reaction time + Cycle time
Timing metrics explained: Lead time vs Cycle time
How is the reaction time calculated?
Reaction time starts running when a task is moved into a state that is mapped to the "Not started" in the workflow mapping. The reaction time stops when the task is moved out from that state. If the task is never placed into a state that is mapped to the “Not started” workflow state, then the reaction time is zero.
What if tasks skip lists/columns, or there is no sequential workflow?
The timing information is based on how long items stay in the workflow states that are mapped to "In progress" in the workflow mapping. There is no need for sequential progress, and it is totally fine if tasks skip some of the workflow steps.
What if a task is moved from the “not started” state directly to “done” without going through any of the “in progress” states?
In that case, the cycle time will be zero.
How does the cycle time work if a task is moved into "in progress" and then back to "not started yet"? Similarly, what happens if a card is archived while it's in progress?
Cycle time is calculated only for completed tasks, so in both of those cases, cycle time would be undefined.
If a task is moved from "in progress" to "done", but then back to "in progress" again for additional work would this time be added to the cycle time?
Cycle time is counted only when the task is in progress, so the time spent in the "done" state is not included in the calculation.
When is a task created? Does the clock start when a task is created or when it is put in the "next" state (or equivalent)?
The clock starts when a task is moved to a workflow state that is mapped to the "not started" or "in progress" workflow state.
Are weekends included in the cycle time calculations?
Weekends are included in the calculations by default, but you can change that in the chart settings by selecting 'Exclude non-business hours. See How to set weekend days and office hours
What is the difference between these metrics?
Reaction time = time before the work was started
Cycle time = time from start to completion
Lead time = Reaction time + Cycle time
Timing metrics explained: Lead time vs Cycle time
How is the reaction time calculated?
Reaction time starts running when a task is moved into a state that is mapped to the "Not started" in the workflow mapping. The reaction time stops when the task is moved out from that state. If the task is never placed into a state that is mapped to the “Not started” workflow state, then the reaction time is zero.
What if tasks skip lists/columns, or there is no sequential workflow?
The timing information is based on how long items stay in the workflow states that are mapped to "In progress" in the workflow mapping. There is no need for sequential progress, and it is totally fine if tasks skip some of the workflow steps.
What if a task is moved from the “not started” state directly to “done” without going through any of the “in progress” states?
In that case, the cycle time will be zero.
How does the cycle time work if a task is moved into "in progress" and then back to "not started yet"? Similarly, what happens if a card is archived while it's in progress?
Cycle time is calculated only for completed tasks, so in both of those cases, cycle time would be undefined.
If a task is moved from "in progress" to "done", but then back to "in progress" again for additional work would this time be added to the cycle time?
Cycle time is counted only when the task is in progress, so the time spent in the "done" state is not included in the calculation.
When is a task created? Does the clock start when a task is created or when it is put in the "next" state (or equivalent)?
The clock starts when a task is moved to a workflow state that is mapped to the "not started" or "in progress" workflow state.
Are weekends included in the cycle time calculations?
Weekends are included in the calculations by default, but you can change that in the chart settings by selecting 'Exclude non-business hours. See How to set weekend days and office hours
By default yes, but you can specify your working hours and days in the Account Settings.
By default yes, but you can specify your working hours and days in the Account Settings.
Yes, there are a few different ways you can filter out outliers from the charts, including
Filtering by item name
Filtering by how long an item has been in progress
Setting a label and filtering out based on that label
You can learn more from this guide: How to remove outliers from data?
Yes, there are a few different ways you can filter out outliers from the charts, including
Filtering by item name
Filtering by how long an item has been in progress
Setting a label and filtering out based on that label
You can learn more from this guide: How to remove outliers from data?
Does this support my specific workflow or do I have to use some specific states like "open", "in progress" and "done"?
You are not limited to any specific set of states or a workflow. You can configure your own workflow, if such exists, and you can use that in your reporting. It's also ok if you don't have any workflow in your boards, as can create reports based on any other criteria by setting a filter.
You are not limited to any specific set of states or a workflow. You can configure your own workflow, if such exists, and you can use that in your reporting. It's also ok if you don't have any workflow in your boards, as can create reports based on any other criteria by setting a filter.
You can embed any custom chart or report to any web page using the embed code. Learn more about the sharing feature from the online guide.
You can embed any custom chart or report to any web page using the embed code. Learn more about the sharing feature from the online guide.
The Getting Started Guide contains Instructions for setting up Screenful.
See also our Accounts & Pricing FAQ.
Check out our how-to and video tutorials, or get in touch by emailing support@screenful.com
The Getting Started Guide contains Instructions for setting up Screenful.
See also our Accounts & Pricing FAQ.
Check out our how-to and video tutorials, or get in touch by emailing support@screenful.com
FAQ
Common questions
A data source is a GitLab board. The pricing is based on the number of boards you explicitly import to Screenful, not the total number of boards in GitLab. You can compare plans on the pricing page.
You can import data sources from all the tools we support in the same Screenful account. Learn more about managing data sources.
A data source is a GitLab board. The pricing is based on the number of boards you explicitly import to Screenful, not the total number of boards in GitLab. You can compare plans on the pricing page.
You can import data sources from all the tools we support in the same Screenful account. Learn more about managing data sources.
Yes except that you won’t be able to use data from epics or issue weights since those are available only in a paid GitLab plans.
Yes except that you won’t be able to use data from epics or issue weights since those are available only in a paid GitLab plans.
The timings are based on your workflow settings. You can learn more from the Lead Time FAQ.
The timings are based on your workflow settings. You can learn more from the Lead Time FAQ.
Yes, you can filter the data shown so that either issues, merge requests, or both are included in the stats by setting a filter.
Yes, you can filter the data shown so that either issues, merge requests, or both are included in the stats by setting a filter.
Yes, you can track GitLab epics with Screenful. You can use "Epic" as a filter in a chart. For the chart that supports grouping (bar charts, pie chart, stacked area chart), you can group data by epic. You can also filter charts by "Item type"->"Epic". That will include only epics in the chart.
Yes, you can track GitLab epics with Screenful. You can use "Epic" as a filter in a chart. For the chart that supports grouping (bar charts, pie chart, stacked area chart), you can group data by epic. You can also filter charts by "Item type"->"Epic". That will include only epics in the chart.
Yes, you can group and filter data by iterations. You can also create a burndown chart for tracking a Gitlab iteration.
Yes, you can group and filter data by iterations. You can also create a burndown chart for tracking a Gitlab iteration.
You can manage the subscription in the billing settings. The location of the billing settings depends on the product you are subscribed to. You can learn more by following the instructions in this guide.
You can manage the subscription in the billing settings. The location of the billing settings depends on the product you are subscribed to. You can learn more by following the instructions in this guide.
We do not make changes to your data. We only read it via the API of your tool. Screenful is only for reporting and analytics. It does not update any data within your tools.
We do not make changes to your data. We only read it via the API of your tool. Screenful is only for reporting and analytics. It does not update any data within your tools.
All data sources are synced automatically once per hour. Changing settings or configuration will trigger additional sync so your data is at most one hour old. You can sync data manually at any time in the sync settings.
All data sources are synced automatically once per hour. Changing settings or configuration will trigger additional sync so your data is at most one hour old. You can sync data manually at any time in the sync settings.
Yes, you can create charts with a prompt and ask questions about a chart by using the Screenful AI Assistant. The assistant combines the leading LLMs with advanced multidimensional data analytics to help you understand and interpret your data.
Yes, you can create charts with a prompt and ask questions about a chart by using the Screenful AI Assistant. The assistant combines the leading LLMs with advanced multidimensional data analytics to help you understand and interpret your data.
What is the difference between these metrics?
Reaction time = time before the work was started
Cycle time = time from start to completion
Lead time = Reaction time + Cycle time
Timing metrics explained: Lead time vs Cycle time
How is the reaction time calculated?
Reaction time starts running when a task is moved into a state that is mapped to the "Not started" in the workflow mapping. The reaction time stops when the task is moved out from that state. If the task is never placed into a state that is mapped to the “Not started” workflow state, then the reaction time is zero.
What if tasks skip lists/columns, or there is no sequential workflow?
The timing information is based on how long items stay in the workflow states that are mapped to "In progress" in the workflow mapping. There is no need for sequential progress, and it is totally fine if tasks skip some of the workflow steps.
What if a task is moved from the “not started” state directly to “done” without going through any of the “in progress” states?
In that case, the cycle time will be zero.
How does the cycle time work if a task is moved into "in progress" and then back to "not started yet"? Similarly, what happens if a card is archived while it's in progress?
Cycle time is calculated only for completed tasks, so in both of those cases, cycle time would be undefined.
If a task is moved from "in progress" to "done", but then back to "in progress" again for additional work would this time be added to the cycle time?
Cycle time is counted only when the task is in progress, so the time spent in the "done" state is not included in the calculation.
When is a task created? Does the clock start when a task is created or when it is put in the "next" state (or equivalent)?
The clock starts when a task is moved to a workflow state that is mapped to the "not started" or "in progress" workflow state.
Are weekends included in the cycle time calculations?
Weekends are included in the calculations by default, but you can change that in the chart settings by selecting 'Exclude non-business hours. See How to set weekend days and office hours
What is the difference between these metrics?
Reaction time = time before the work was started
Cycle time = time from start to completion
Lead time = Reaction time + Cycle time
Timing metrics explained: Lead time vs Cycle time
How is the reaction time calculated?
Reaction time starts running when a task is moved into a state that is mapped to the "Not started" in the workflow mapping. The reaction time stops when the task is moved out from that state. If the task is never placed into a state that is mapped to the “Not started” workflow state, then the reaction time is zero.
What if tasks skip lists/columns, or there is no sequential workflow?
The timing information is based on how long items stay in the workflow states that are mapped to "In progress" in the workflow mapping. There is no need for sequential progress, and it is totally fine if tasks skip some of the workflow steps.
What if a task is moved from the “not started” state directly to “done” without going through any of the “in progress” states?
In that case, the cycle time will be zero.
How does the cycle time work if a task is moved into "in progress" and then back to "not started yet"? Similarly, what happens if a card is archived while it's in progress?
Cycle time is calculated only for completed tasks, so in both of those cases, cycle time would be undefined.
If a task is moved from "in progress" to "done", but then back to "in progress" again for additional work would this time be added to the cycle time?
Cycle time is counted only when the task is in progress, so the time spent in the "done" state is not included in the calculation.
When is a task created? Does the clock start when a task is created or when it is put in the "next" state (or equivalent)?
The clock starts when a task is moved to a workflow state that is mapped to the "not started" or "in progress" workflow state.
Are weekends included in the cycle time calculations?
Weekends are included in the calculations by default, but you can change that in the chart settings by selecting 'Exclude non-business hours. See How to set weekend days and office hours
By default yes, but you can specify your working hours and days in the Account Settings.
By default yes, but you can specify your working hours and days in the Account Settings.
Yes, there are a few different ways you can filter out outliers from the charts, including
Filtering by item name
Filtering by how long an item has been in progress
Setting a label and filtering out based on that label
You can learn more from this guide: How to remove outliers from data?
Yes, there are a few different ways you can filter out outliers from the charts, including
Filtering by item name
Filtering by how long an item has been in progress
Setting a label and filtering out based on that label
You can learn more from this guide: How to remove outliers from data?
Does this support my specific workflow or do I have to use some specific states like "open", "in progress" and "done"?
You are not limited to any specific set of states or a workflow. You can configure your own workflow, if such exists, and you can use that in your reporting. It's also ok if you don't have any workflow in your boards, as can create reports based on any other criteria by setting a filter.
You are not limited to any specific set of states or a workflow. You can configure your own workflow, if such exists, and you can use that in your reporting. It's also ok if you don't have any workflow in your boards, as can create reports based on any other criteria by setting a filter.
You can embed any custom chart or report to any web page using the embed code. Learn more about the sharing feature from the online guide.
You can embed any custom chart or report to any web page using the embed code. Learn more about the sharing feature from the online guide.
The Getting Started Guide contains Instructions for setting up Screenful.
See also our Accounts & Pricing FAQ.
Check out our how-to and video tutorials, or get in touch by emailing support@screenful.com
The Getting Started Guide contains Instructions for setting up Screenful.
See also our Accounts & Pricing FAQ.
Check out our how-to and video tutorials, or get in touch by emailing support@screenful.com
Troubleshooting
Screenful connects to the GitLab board, not a project or group, so the first thing would be to check that the missing issues or pull requests are visible on that board.
Screenful connects to the GitLab board, not a project or group, so the first thing would be to check that the missing issues or pull requests are visible on that board.
While both the public and private channels are shown in the menu, you won’t receive the report to a private channel without explicitly adding the Screenful app to that channel. Learn how to enable sending to a private Slack channel.
There can also be restrictions on who can install apps to your Slack. Learn how to manage app approval in your Slack workspace.
Some browser plugins may interfere with the authorization process. If you see an empty page during the authorization or the list of channels is empty, you should try with another browser (or ask your colleague to do the Slack authorization).
While both the public and private channels are shown in the menu, you won’t receive the report to a private channel without explicitly adding the Screenful app to that channel. Learn how to enable sending to a private Slack channel.
There can also be restrictions on who can install apps to your Slack. Learn how to manage app approval in your Slack workspace.
Some browser plugins may interfere with the authorization process. If you see an empty page during the authorization or the list of channels is empty, you should try with another browser (or ask your colleague to do the Slack authorization).
Filter options are derived from task data, which means that if you recently added some properties, such as labels, but haven't yet assigned them to any tasks, they won't show up in the filter options. As soon as you assign them to tasks, they will show up in the filter options from then on.
Filter options are derived from task data, which means that if you recently added some properties, such as labels, but haven't yet assigned them to any tasks, they won't show up in the filter options. As soon as you assign them to tasks, they will show up in the filter options from then on.
If you or your colleague didn't receive the user invitation email, you can go to the user settings and click the Copy invitation link button to copy the link to the clipboard. After that, you can share the link via any channel (email, Slack, Teams, etc). You can learn more from the user invitation guide.
If you or your colleague didn't receive the user invitation email, you can go to the user settings and click the Copy invitation link button to copy the link to the clipboard. After that, you can share the link via any channel (email, Slack, Teams, etc). You can learn more from the user invitation guide.
Troubleshooting
Screenful connects to the GitLab board, not a project or group, so the first thing would be to check that the missing issues or pull requests are visible on that board.
Screenful connects to the GitLab board, not a project or group, so the first thing would be to check that the missing issues or pull requests are visible on that board.
While both the public and private channels are shown in the menu, you won’t receive the report to a private channel without explicitly adding the Screenful app to that channel. Learn how to enable sending to a private Slack channel.
There can also be restrictions on who can install apps to your Slack. Learn how to manage app approval in your Slack workspace.
Some browser plugins may interfere with the authorization process. If you see an empty page during the authorization or the list of channels is empty, you should try with another browser (or ask your colleague to do the Slack authorization).
While both the public and private channels are shown in the menu, you won’t receive the report to a private channel without explicitly adding the Screenful app to that channel. Learn how to enable sending to a private Slack channel.
There can also be restrictions on who can install apps to your Slack. Learn how to manage app approval in your Slack workspace.
Some browser plugins may interfere with the authorization process. If you see an empty page during the authorization or the list of channels is empty, you should try with another browser (or ask your colleague to do the Slack authorization).
Filter options are derived from task data, which means that if you recently added some properties, such as labels, but haven't yet assigned them to any tasks, they won't show up in the filter options. As soon as you assign them to tasks, they will show up in the filter options from then on.
Filter options are derived from task data, which means that if you recently added some properties, such as labels, but haven't yet assigned them to any tasks, they won't show up in the filter options. As soon as you assign them to tasks, they will show up in the filter options from then on.
If you or your colleague didn't receive the user invitation email, you can go to the user settings and click the Copy invitation link button to copy the link to the clipboard. After that, you can share the link via any channel (email, Slack, Teams, etc). You can learn more from the user invitation guide.
If you or your colleague didn't receive the user invitation email, you can go to the user settings and click the Copy invitation link button to copy the link to the clipboard. After that, you can share the link via any channel (email, Slack, Teams, etc). You can learn more from the user invitation guide.