Skip to content

Create reports with the custom report builder

Last updated: July 16, 2024

Available with any of the following subscriptions, except where noted:

Marketing Hub   Professional , Enterprise
Sales Hub   Professional , Enterprise
Service Hub   Professional , Enterprise
Operations Hub   Professional , Enterprise
Content Hub   Professional , Enterprise

With HubSpot's custom report builder, you can analyze multiple data sources across HubSpot. The difference between the custom report builder and other types of HubSpot reports is that you can surface data from marketing and sales activities in addition to objects. For example, you can create a report to measure how your target accounts are engaging with your website.

To create reports with the custom report builder, the user must have Create/own and Edit report permissions.

If you have an Operations Hub Enterprise subscription, you can also create datasets to power your custom reports. 

Create a report

Creating a report in the custom report builder can be broken down into the following steps:

  1. Select the report's data sources: select the types of HubSpot data that the report will include.
  2. Add fields to the report: select the specific property, event, and activity data to report on.
  3. Customize report filters: set limits and boundaries for the fields you've added.
  4. Configure report visualization: choose how you want data to be displayed.
  5. Save or export the report: make your report available for yourself and others to view, or export it to take your data offline.

If you're not sure what the best type of chart to use for your report is, you can use the smart chart feature to get you started. By enabling smart chart before adding your fields, HubSpot will automatically suggest chart type based on the fields you add. Once you select a recommended chart type, HubSpot will then automatically arrange the fields into recommended channels. Learn more about using smart chart

To start building your report: 

  • In your HubSpot account, navigate to Reporting > Reports.
  • In the upper right, click Create report.
  • In the Create reports from scratch section, click Custom Report Builder
  • Click Choose my own data sources or Start with a dataset. Learn more about datasets.

Select data sources

Data sources are the objects, assets, and events that you want to report on. The primary data source will be the focus of the report, with all other data sources relating to that primary source. For example, a report with a primary source of Contacts and a secondary source of Deals will only pull in deals that are associated with contacts. To include all deals in the report, including unassociated deals, you would need to select Deals as the primary data source. Learn more about selecting data sources.

You can select your data sources manually, use a sample report, or if you have a Operations Hub Enterprise subscription you can base your report on a dataset. A custom report can include up to five data sources.

  • To select your data sources manually:
    • Select the primary source by clicking the Primary data source dropdown menu and selecting a primary source.
       select-primary-data-source
    • Select your secondary sources by choosing from the CRMMarketingSalesService, and Custom objects (Enterprise only) sections.

Please note: when selecting data sources, some data sources may become unavailable or be automatically selected due to how HubSpot is able to connect multiple data sources.

  • To select a sample report:
    • Click the Sample reports tab.
    • Browse or use the search bar to view the available sample reports. Sample reports are ordered by relevance based on the primary and secondary sources that you selected.
    • To build the report, select the sample report, then click Next in the upper right.
    • In the report builder, you click Save to save the report as it is, or further customize the report
    • At any time, you can view more sample reports by clicking Sample reports in the upper right of the report builder. Then, in the right sidebar, select the sample report you want to view and click Apply.

Add fields

Select specific properties, activity measurements, and events to add data to your report. The available fields will be based on the data sources you select for the report. The amount of fields you can add to a report depends on the report type:

  • Vertical bar, line, and area charts: you can add a maximum of twelve fields on the Y-axis and one on the X-axis, or one each on the X and Y axis and one Break down by.
  • Horizontal bar: you can add a maximum of twelve fields on the X-axis and one on theY-axis, or one each on the X and Y axis and one Break down by.
  • Combination charts: you can add a maximum of four fields.
  • Donut, pie, KPI: you can add a maximum of thirty value fields, or one value field and one Break down by.
  • Gauge: you can add a maximum of one value field.
  • Pivot table: you can add a maximum of thirty fields, with a maximum of four rows and four columns.
  • Table: you can add a maximum of thirty fields.

Please note: event fields can be seen under the Events section in certain data sources. Currently, you can only pick one event field for the custom report, and the data in the field will be limited to a certain time range automatically.

To add fields to the report:

  • In the left panel, use the search bar, click the Browse dropdown menu or click the Filter fields icon and select the data source with the field you want to add. Hover over the property and click verticalMenuAActions > View property info to view the property details, description and the property edit history.
  • Formula fields can be used in the custom report builder (Operations Hub Enterprise only). Learn more about creating fields using formulas.
  • Click and drag fields from the left sidebar into the channel slots in the Configure tab, or click verticalMenu Actions Add to [X].
  • If you have smart chart enabled, all fields will be added under the Columns header by default. For all other chart types, available channels will vary by chart type:
    • X-axis: the horizontal line in the report.
    • Y-axis: the vertical line in the report. 
    • Break down by: the sections or categories in the report.

Please note: adding a field with a large amount of data to the Break down by channel may result in the report being unable to load. Learn more about avoiding Too many data points requested errors. Reports that contain more than 99 values in the Break down by property will not be able to display on dashboards and will need to be viewed in the reports tool.

    • Values: the amount, quantity, or value of the report (i.e., what is being counted). 
    • Group by: the sections or categories in the report.
    • Columns: the columns in the report. 
    • View point details by: for scatter plot charts, this channel breaks down data by creating points on the chart as per the specified field. While Break down by will create points organized by color, this slot will organize all data without color or additional mappings. Use this channel instead of Break down by when reporting on larger data sets. Accepts dimension fields.
    • View point size by: for scatter plot charts, use this channel to add a third numeric value to the chart and automatically scale the data with bubbles in the visualization. Accepts measure fields.

add-properties-to-axis

Fields can be set as one of two types, which reflect whether an aggregation is performed on the field's data:

  • Dimensions: fields with no aggregation, displayed as grey. Dimensions can be any data type, including dates, numbers, booleans, and strings. This type of field can only be added to the X-axis and Break down by slot. 

    custom-report-builder-dimension
  • Measures: fields with a set aggregation method, displayed as green. Measures are typically numerical or quantitative values, such as the number of associated deals. This type of field can only be added to the Y-axis. You can add up to twelve measures to one report.
report-builder-measure-example
Setting an aggregation type on a field can be helpful if you want to return the field's data in a specific way, such as a sum or an average. For example, you might want to view the revenue of your deals as a sum for each type of deal to understand which types of deals result in the most revenue. Learn more about aggregation methods .

Please note: the aggregation method for default measures, such as Count of deals, is set to Distinct count and cannot be adjusted.

  • To edit a field, click the down down arrow icon next to the field. In the dialog box, edit the field's details, depending on the type of field:
    • Name: change the field's name for this report. 
    • Aggregation: the field's aggregation method.
    • Sort: for fields with no aggregation type, select the value and order that the field's data is sorted by.
      • Label: sort the field's data by its labels in ascending or descending order.
      • Value: sort the field's data by its values in ascending or descending order.
      • Display order: sort the field's data by the order that its values are displayed in HubSpot.
      • Count of records: if your report includes a default measure, such as Count of contacts or Count of companies, sort the field by that default dimension.
    • Limit: for fields with no aggregation type, set a limit to the number of values added to the report from this field, such as Top 10 or Bottom 20.

    • Format: edit how decimal places, negative values, and thousand separators are used for the selected number field. Using this measure, relevant fields can be displayed as currencies or percentages.
  • By default, report data will refresh as you make adjustments. To prevent the report from refreshing, select the Refresh as I make changes checkbox above the report. You can then manually refresh the report by clicking the refresh refresh icon.

custom-report-builder-refresh-checkbox-1

 

Customize report filters

Customize report filters to be more specific about which data the report displays.

To customize your report filters:

  • Click the Filter tab, or click verticalMenu Actions > Add to filters.

custom-report-builder-filter-tab

  • By default, event reporting is limited by the amount of event data in your account. A higher volume of event data will shorten the time frame available for reporting on that event. Learn more about this event limit.

    event-timestamp
  • Set your other filter rules by clicking the Filter rules dropdown menu and selecting an option:
    • ALL of the filters below: the data should adhere to all conditions.
    • ANY of the filters below: the data should adhere to one or more of the conditions.
    • Custom filter rules: the data should adhere to custom rule grouping, separated by AND and OR operators. Learn more about grouping your fields.

      custom-report-builder-filter-rules
  • Add conditions to your filter fields:
    • Below Inactive filters, click a field
    • Select a condition for the field and select the value for the condition. 
    • Click Apply

      custom-report-inactive-filter

Please note: the following filter conditions will not include records that have no value for the filtered property:

  • is not equal to any of
  • doesn't contain any of
  • has never been equal to any of
  • has never contained any of
  • is not equal to
  • is none of
  • To group your filters with AND, OR and NOT logic:
    • Click the filter you want to group with another.
    • Click the Group with another filter dropdown menu and select the filter number you want to group this filter with. custom-report-builder-custom-filter-rules-filter-grouping-1
    • Click Apply.
    • The filters will then be grouped together. To update the operator within the group, click the and text in the group and select or. The not logic is not available in this group filter. Learn more about the difference between AND and OR logic.

    • You can also enter text into the Filter rules field. For example, entering 1 and (NOT 2) will include data that adheres to filter 1 but not to filter 2. When using the NOT filter, it must be written in caps.
       example-custom-filter

Please note:
  • To ensure consistency for all users in the account, date-based filters, such as This month, use the account's time zone. However, values from HubSpot default date properties display relative to your local time zone. This can lead to unexpected report values depending on your location. For example, if you're located in Boston while another team member is in San Francisco, you'll both see the same deals in a custom deal report. However, when drilling into the report, you might see slightly different create dates for the included deals.
  • The filter This week begins on a Monday and ends on a Sunday.

Configure report visualization

Select the chart type and additional settings to configure how your data is visualized. 
  • In the Configure tab, choose how your data will be displayed by selecting your chart type. Learn more about HubSpot's chart types.

chart-type

  • If you're not sure what the best type of chart to use for your report is, select the smart chart feature to get started. With smart chart enabled, HubSpot will recommend chart types that work best with your selected fields.
    • To enable smart chart, select the smart chart chart type.

      smart-chart
    • After adding fields to the report, HubSpot will highlight recommended chart styles in blue. 
    • To automatically arrange your fields, select a recommended chart type. HubSpot will then set fields into the recommended channels, as well as break your data down by one of the added fields depending on the chart type. With smart chart enabled, added fields will remain under a Columns header, rather than individual axes as in a standard custom report.
    • To configure the report further, click the smart chart feature to toggle it off. Fields in the Configure tab will then be categorized by the recommended axes, columns, or break down depending on the chart type.
  • To add a second Y-axis to your chart, click + Add another Y-axis. The chart will then be converted to a combination chart, and you can configure each Y-axis separately within the chart's settings. Learn more about using multiple Y-axes.
  • To further configure your chart's settings, click Chart settings. Available chart settings depend on the type of chart you select.
    • Axis Scale: the scale at which your data is displayed, either linear or logarithmic.
      • Linear: represent the chart's data at a true scale. The chart will display outliers prominently. 

        report-builder-linear-scale0
      • Logarithmic: condense the chart's data to reduce space between data points. This can be useful when needing to compare data that contains drastic outliers. 

        report-builder-logarithmic-scale0
    • Y-axis label: edit the label name on the y-axis. If no changes are made, the y-axis label will default to the property name of the measure listed first.
    • Color palette: select the chart's color scheme from a set of HubSpot color themes or your own brand colors. For users with color blindness or vision impairment, the Pattern Fill option creates a unique pattern for each color that makes reports easier to read.
    • Colors: to further customize the color scheme, click the color picker next to a breakdown value and select a color.
    • Cumulative: for line and area charts reports with date or time values in the X-axis, represent values cumulatively across the X-axis.

      report-builder-cumulative0
    • Legend position: by default, the chart legend will display at the top of the chart to indicate data by value and color. To change the position of the legend, click the dropdown menu, then select a position.
    • Max: the maximum value that a chart's axis will display. This setting controls how zoomed in the visualization is. For example, a value of 100 on a vertical bar chart will set the Y-axis to display up to a value of 100. 

      report-builder-max-example0
      • This setting doesn't filter data from the report, and is only for display purposes.
      • When used with a logarithmic axis scale, the report builder will round this value up to the nearest increment based on the logarithmic scale. 

        report-builder-max-example-logarithmic0
    • Min: the minimum value that a chart's axis will display. This setting controls how zoomed in the visualization is. For example, a value of 50 on a vertical bar chart will set the Y-axis to start at a value of 50. This setting doesn't filter data from the report, and is only for display purposes.
    • Monthly Goal: enter a number to add a goal line to the chart. Monthly goal can only be used in XY visualization (e.g., vertical bar, area, or line chart) when a date-based property is being used on the x-axis.report-builder-monthly-goal0
    • Show Bubble Legend: for scatter plot charts, when the report contains a View point size by field, you can add the bubble size to the legend by selecting the checkbox
    • Show Data Labels: by default, charts include data labels to show specific values. To hide these labels, clear the checkbox.
    • Data label format: for scatter plot charts, when Show Data Labels is selected, you can select which data labels will appear in the chart. For example, select (X,Y) to show data labels for values from both the X and Y-axis.
    • Opacity: for scatter plot charts, set the opacity of the points in the chart. A lower opacity can be helpful when data overlaps visually.
    • Show Markers: by default, line and area charts include indicators at data points along the axes. To remove the indicators, clear the checkbox.
    • Show today: by default, line and area charts only include data from previous days. To include data from the current day so far, select the checkbox.
    • Show totals: by default, donut and pie charts display the total data included in the report. To hide the total, clear the checkbox.
    • Stacked: stacks the Break down by values, which can improve readability of a report.
    • Y-axis 1 and 2: for combination charts, you can select whether to display each Y-axis as a Bar, Line, or Area chart. The settings for each Y-axis visualization type are the same as the settings available for the general chart type. To add data to another Y-axis, click and drag a measure to the y-axis section on the Configure tab. 
    • Y-axis mode: by default, combination charts are set to Dual axis mode.
    • Bands: use colored bands to visually indicate a set of values in your gauge visualization. For example, you can have yellow for performing well, orange for average performance, and red for not performing. 
      • To set up a band, configure the following values: 
        • From: enter the start value of the band. 
        • To: enter the end value of the band. 
        • Color: set a color for your band. 
      • To add another band, click Add Band
      • To remove a band, click X next to the band. 

KB - Gauge Visualization

Please note:
  • When creating a report with more than one measure, you cannot add in another dimension into the Break down by section, because the report is already being broken down by the selected measures.
  • When reporting on measures that have the same formatting, such as revenue properties that are formatted in the same currency, the y-axis scale will maintain a consistent format.
  • If multiple formats are introduced to your report, such as multiple currencies or percentages, the y-axis scale will be formatted as a general number, to be inclusive of all the measures that are being displayed in your report.

Save your report

Once the report is set up, save it to your reports list, dashboard, or export the data from HubSpot.

To save the report to your reports list or a dashboard:

  • In the upper right, click Save. To save your report as a copy, click Save as.
  • In the right panel, enter the report name into the Report name field.
  • Select where you want to save the report to:
    • Don't add to dashboard: the report will be added to your reports list.
    • Add to existing dashboard: the report will be added to an existing dashboard. To select the dashboard to add the report to, click the dropdown menu.
    • Add to new dashboard: the report will be added to a dashboard you'll create. Enter the dashboard's name, and select its visibility.
  • In the bottom right, click Save.

You can also export a report to take your data offline. When configuring a report for export, all fields in the Fields section will be included as columns in the export. All fields in the report will export with their most up to date name. 

To export a report:

  • In the upper right, click Export.
  • In the dialog box, enter the name of the export, then select the File format that you want to save the report as. Click Export. The file will begin processing, and you'll receive a notification once the report is available for download.

Refresh a report

Reports built with the custom report builder will automatically refresh with newly available data every two hours. However, you can manually refresh a report or a dashboard once every 15 minutes to retrieve new data.

To manually refresh reports on a dashboard:

  • In your HubSpot account, navigate to Reporting > Dashboards.
  • Use the dashboard dropdown menu in the upper left to select the dashboard with the report you want to refresh.
  • To refresh all reports on a dashboard, click the Actions dropdown menu in the upper right, then select Refresh all reports

    dashboard-refresh-all-reports-1
  • To refresh an individual report, hover over the report, then click the verticalMenumenu icon and select Refresh

    dashboard-refresh-individual-report

To manually refresh a report from the report library:

  • In your HubSpot account, navigate to Reporting > Reports.
  • Click the name of the report you want to refresh.
  • At the bottom of the report, click Refresh

    report-library-refresh-report

Reporting and data limits

Keep the following limits in mind when using the custom report builder:

  • For increased performance, non-table reports are limited to 1,000 unique rows of data. To reduce the number of rows in a report, it's recommended to add filters to make your data more specific, or use dimensions that have a lower number of unique values (for example, multiple select type properties). Table reports are paginated and can contain more than 1,000 rows.
  • New data takes 10-15 minutes to appear in reports. For example, if you create a new contact that meets a report's criteria, the contact will not appear in the report for 10-15 minutes.
  • Reports built with the custom report builder will automatically refresh with newly available data every two hours. To pull in new data before the next automatic refresh, learn how to manually refresh a report.
  • Some fields, such as HubSpot team and the Owner fields will export with internal ID's rather than the HubSpot labels. 
  • For event reporting, there's a maximum time range of 5 years or 10 million events (Professional only) and 100 million events (Enterprise only). If there are over 10 million events (Professional only) or 100 million events (Enterprise only) for the selected event type, the available time frame will be shortened. The minimum time frame for event reporting is one month for Professional and two months for Enterprise. This is to ensure the report loads efficiently and in a timely fashion.
Was this article helpful?
This form is used for documentation feedback only. Learn how to get help with HubSpot.