ReportServer - The Business Intelligence Suite

ReportServer is the modern and versatile business intelligence (OSBI) platform for your company.

Read more or compare editions or try it out

Open Source

ReportServer Community Edition is open source software under the aGPL.


Pixel-perfect reporting, ad-hoc analyses, Excel and Word reporting or multidimensional OLAP analytics: ReportServer comes with a great selection of powerful tools.


You require enterprise features? Choose ReportServer Enterprise Edition. Compare ReportServer editions.

Recent News

ReportServer 3.1.0-6018
The 3.1.0-6018 patch version is now available for all users. For a list of all changes please refer to the release notes. The upgrade guide is available in the documentation area.
Happy reporting!
ReportServer 3.1.0-6016
The 3.1.0-6016 patch version is now available for all users. For a list of all changes please refer to the release notes. The upgrade guide is available in the documentation area.
Happy reporting!
ReportServer 3.1.0-6015
We discovered and corrected a bug in the Apache POI 4 release which affects ReportServer JXLS reports in the 3.1.0 version. The 3.1.0-6015 version of ReportServer fixes this and is available for download. For a list of all changes please refer to the release notes. The upgrade guide is available in the documentation area. Happy reporting!
ReportServer 3.1.0-6011
We announce that the 3.1.0-6011 version of ReportServer is now available for download. This version includes bugfixes regarding some JXLS templates and scheduler jobs. For a list of all changes please refer to the release notes. The upgrade guide is available in the documentation area. Happy reporting!
ReportServer 3.1.0
We are pleased to announce that the 3.1.0 version of ReportServer is now available for download. Among other new features, improvements and bug fixes, JXLS2 is supported together with JXLS1. Further, the parameter export was largely improved. For a list of all changes please refer to the release notes. The upgrade guide is available in the documentation area. Happy reporting!
ReportServer 3.0.8
We are happy to announce that the 3.0.8 version of ReportServer is available for download. Among other new features, improvements and bug fixes, parameter values can be printed out together with the dynamic list export. For a list of all changes please refer to the release notes. The upgrade guide is available in the documentation area. Happy reporting!
ReportServer 3.0.7
We announce that the 3.0.7 version of ReportServer is now available for download. Among other new features, improvements and bug fixes, Mondrian 3 and 4 schemas can now be directly exported from pivot reports and the Mondrian libraries were upgraded to the latest version. For a list of all changes please refer to the release notes. The upgrade guide is available in the documentation area. Happy reporting!
ReportServer 3.0.6-6007
We are happy to announce that the 3.0.6-6007 version of ReportServer is available. The patch release of RS fixes some bugs and has some improvements. For a list of all changes please refer to the release notes. The upgrade guide is available in the documentation area. Happy reporting!
ReportServer 3.0.6
We are pleased to announce that ReportServer 3.0.6 version is available. In addition to Release Notes 3.0.5, you can see in the release notes which improvements were made, which new features have been added and which bugs have been fixed. An upgrade manual can be found in the documentation area. Happy Reporting!
ReportServer 3.0.5
We are pleased to announce that ReportServer 3.0.5 version is available for download! In the release notes you can find out which new features have been added, which improvements and bug fixes we have made for you. The upgrade manual can be found in the documentation area. Enjoy!
ReportServer 3.0.4
We announce that the new ReportServer 3.0.4 version is ready for download! Again, you can look forward to new features, improvements and bug fixes. In the release notes you are able to see the list of all changes. The upgrade manual can be found in the documentation area. Enjoy!
ReportServer 3.0.3 patch 6003
We are pleased to announce that ReportServer 3.0.3 Release 6003 is available. In addition to Release Notes 3.0.3, you can see in the release notes which improvements were made, which new features have been added and which bugs have been fixed. An upgrade manual can be found in the documentation area. Happy Reporting!
ReportServer 3.0.3 patch 6002
We are happy to announce that the 3.0.3-6002 version of ReportServer is available. The patch release of RS fixes some bugs and improves conditional scheduling. For a list of all changes please refer to the release notes. The upgrade guide is available in the documentation area. Happy reporting!
ReportServer 3.0.3 Released
We are happy to announce that version 3.0.3, after successful test completion, is now officially released.
Please refer to this blog entry for details on new features, changes and improvements. The upgrade guide is available in the documentation area.
New Tutorial
ReportServer is built upon a very flexible permission system that can easily handle multiple clients on a single installation. In a new tutorial we discuss how ReportServer can be set up for multiple tenants: Setting up a Multi-Tenant System.
ReportServer 3.0.2 Released
The maintenance release, ReportServer 3.0.2, fixes various bugs and comes with a few new additions, most notably, it is now ready to run on JBoss Wildfly 10. For a list of all changes please refer to the release notes. An upgrade tutorial is available in the tutorials section on our documentation page.
ReportServer 3.0 Released
We are thrilled to announce the release of ReportServer 3.0. Find out more...
Read more ReportServer reviews

Try out ReportServer without any further delay.

Report Engines

ReportServer integrates the best reporting engines of different providers under a single user interface.
Always choose the right tool for your current task.

Eclipse BIRT

Pixel-perfect Reporting


Jasper Reports

Reporting ready for print


SAP Crystal Reports

Enterprise Reporting

Ad-Hoc Reporting

Self-Service BI


OLAP & Mondrian

Interactive, Multidimensional Analytics


Office Templates

Excel and Word Reporting


Script Reports

The Swiss Army Knife of Reporting


Ad-Hoc Reporting — Self-Service BI

ReportServer's Dynamic List is a powerful yet intuitive tool to create and manage ad-hoc analyses.

Dynamic Lists

  • Powerful tool for the ad-hoc generation of list-like reports
  • Supports various output formats from Microsoft Excel over PDF to XML
  • Comes with audit-proof documentation
  • Store your analysis as a report variant

The Dynamic List is the preferred method in ReportServer for fast and user specific analyses of data.

The real data (i.e., the raw data) for your reports is usually stored within in tables (aka. lists). With ReportServer's Dynamic List you can directly access this data and compile and configure it in various different ways. Dynamic Lists can be used for individual data processing (e.g. with Microsoft Excel) or converted to various output formats (e.g. XML, CSV, PDF). By employing Templates you can also load specific data directly from your dynamic lists into predefined Excel or Word documents. This way many steps of individual data processing become redundant.

From the simple selection of data by column selection and filters, via sorting, grouping or sub totals through to complex analytic functions - nearly every analysis request can be carried out by the Dynamic List.

Once configured, analyses may be stored as so-called report variants which can then be scheduled to be executed at recurring intervals (and, for example, delivered via email), shared with your colleagues and further utilized within the TeamSpace.

Powerful Filters

An effective ad-hoc reporting solution requires intuitive yet powerful filtering capabilities.

  • Configure filters per attribute
  • Inclusion-, exclusion- and range filters
  • Dynamic selections via wildcards and a date-API
  • Create arbitrarily nested filters with AND- and OR expressions
  • Intra-column comparisons

You can also employ statistic-arithmetic functions. Using these you are able to, for example, set specific conditions such as "the upper ten percent".


Using aggregation you can summarize even the largest datasets.

  • Aggregate your data
  • Create lists with intermediate sums (subtotals)
  • Use filters before or after aggregation

Column Formats

  • Configure the display format per attribute

The display format (e.g., currency, number, date) can be configured per attribute which makes manual adjustments after exporting the report (e.g., to Excel) superfluous.


With templates you can load data from a dynamic list directly into a prepared office document (Microsoft Excel or Word) or into an XML or text format.

  • Supports Microsoft Excel templates
  • Supports Microsoft Word templates
  • Create arbitrary XML dialects
  • Generate custom text documents

ReportServer supports various templating engines which can be combined with the Dynamic List. Via JXLS you can prepare templates in Microsoft Excel and embed data from your report. Similarly, you can use Microsoft Word documents as templates (for this ReportServer integrates the excellent xdoc templating language).

On top, you can use XSL and Velocity templates to generate any form of XML or text format.

Computed Attributes

Take advantage of the functionality of your underlying database for simple or complex computations.

  • Create new attributes via simple (or complex) computations

Computed attributes provide access to the functionality of the underlying database which allows you to easily perform simple or even very complex computations. For example, you can easily perform arithmetic computations and add up attributes. But it doesn't stop at arithmetics: you can use CASE constructs to cluster data or use string functions or even analytic functions.

Are you worried about security? Don't be. It is easy to restrict the functionality and to allow only what you want to allow.

Self-Service Pivot

Discover new aspects about your data via ReportServer's Self-Service Pivot functionality.

  • Construct complex crosstabs
  • Visualize your data via various chart types

Pivot tables allow you to visualize even very large datasets along different dimensions in a concise way. Via ReportServer's unique Self-Service Pivot capabilities you can now transform your dynamic lists into Pivot reports and visualize your data in crosstabs or as charts.

Pixel-Perfect Reporting

Create and distribute pixel-perfect management reports with your preferred reporting engine.

The Eclipse BIRT project is the open source reporting technology of the Eclipse foundation. It comes with a powerful visual report designer based on the Eclipse IDE which allows to create pixel-perfect reports.

ReportServer completes the BIRT toolset by providing you with a powerful environment to manage and distribute your BIRT reports. To add an existing BIRT report to ReportServer simply upload the corresponding .rptdesign file, configure the report parameters and you are good to go. Your users can now parameterize the report, store parameterizations as report variants and execute the report into various formats including PDF, Word or Excel. Of course, users can also utilize ReportServer's integrated scheduler to run their reports on a recurring basis.

Get Started with ReportServer and BIRT

JasperReports is another popular choice when it comes to open-source pixel-perfect reporting. And with ReportServer you don't have to choose: Use the tool that best fits the current job. ReportServer allows you to use JasperReports alongside Eclipse BIRT while presenting the same, unified UI to the user. Simply upload the .jrxml design file, configure your datasource and parameters and that's it.

ReportServer is the reporting platform to use when it comes to deploying JasperReports.

Get Started with ReportServer and JasperReports

SAP Crystal Reports is an enterprise solution to pixel-perfect reporting with similar features as Eclipse BIRT or JasperReports. ReportServer integrates Crystal Reports via Crystal's Java Reporting Component (JRC). This allows you to deploy Crystal reports in ReportServer and use the ReportServer infrastructure to allow your users to execute, parameterize and schedule the reports.

With this ReportServer is an affordable means to make your crystal reports availabe to your users, or even perform a step by step migration to an open-source product without losing access to your legacy reports.

Get Started with ReportServer and Crystal

Multi-dimensional OLAP Reporting

ReportServer, out of the box, comes with an Online Analytical Processing (OLAP) server fully configured. ReportServer integrates Mondrian OLAP, an OLAP server written entirely in Java and optimized for performance even on large datasets.

To access multidimensional reports, ReportServer comes with the beautiful Saiku UI that allows you to intuitively discover your data via drag 'n' drop operations. You can use existing Mondrian cube definitions as is in ReportServer or construct OLAP views on the fly via the dynamic list's pivot functionality.

ReportServer Community
ReportServer Enterprise Edition

ReportServer - Selected Highlights

Access Control, Security and Permissions

ReportServer is ready to be employed in large companies and displays even complex authorization schemes in a manageable way. All objects are stored in hierarchical structures. This enables you to efficiently assign rights for entire sub trees.

ACLs and ACEs

The authorization follows the standards of ACLs and ACEs. There is a list of permission entries for any object that needs to be saved. The permission entries control the access both to the object itself as well as to all its sub objects. This empowers you to comprehensibly and efficiently organize authorization even in huge structures.

User Groups

To create authorizations that do not result from the user's position in the tree, it is possible to define user groups. In these groups, single users, folders and entire sub trees can be subsumed and authorized. Therefore even access privileges that break the hierarchy can easily be implemented.

User Variables

User variables take up a specific role in ReportServer. They facilitate a line-by-line authorization solution right up to the reports. The value of a user variable is defined by the user’s position in the hierarchy. The inheritance mechanism simplifies the administration complexity. The value of the user variables can now be requested at the time of a report’s execution and may be used to limit the returned data.


You are running an Microsoft ActiveDirectory, or want to integrate ReportServer into a Single-Sign-On solution? ReportServer is ready to be deployed within your IT-infrastructure. ReportServer is versatile and extendable and allows you to hook into its authentication process to extend it via scripts or to even replace it completely with your preferred solution.


ReportServer comes with a dynamic scheduling component that allows you to execute reports at recurring intervals but also to, for example, run maintenance scripts.

The integrated time management enables you to schedule your reports in ReportServer and distribute them automatically, e.g., via email. This also works for complex date patterns.
Define necessary conditions for a scheduled execution. For example, you can tell ReportServer to not send out certain reports if they would contain no data.
ReportServer comes with a language (Groovy) which can be used for various tasks. ReportServer's scheduler can be used to also schedule scripts, for example, a maintenance script that checks daily whether important reports run smoothly and which notify admins in case something is amiss.

Team-Ready with TeamSpaces

Today, most companies are organized in teams. To reflect this structure also in the reporting platform, ReportServer has developed and introduced the concept of TeamSpaces. TeamSpaces derived from the experience that shared resources, i.e. network drives, always entail a high-maintenance.

The challenge with teams: Everyone needs to be able to access and work with the available data. Additionally, several user groups need different displays and structures of the same objects. An administrator in example might prefer a display organized according to the data origin, whereas for the end user an organization according to the intended application purpose might be more rewarding. Still the existence of numerous report versions needs to be avoided: otherwise keeping track of the different purposes becomes difficult. TeamSpaces explicitly tackle this problem.

All report objects in ReportServer reside in a single tree hierarchy that can only be edited by administrators. TeamSpaces now enables users to define their own display of the report tree. This can be done by importing objects, either from the global catalog or from other users’ TeamSpaces, and storing them structured according to the users needs.

To foster team cooperation, members of one TeamSpace can edit the contained objects together. Changes done by one user are immediately available to all others. TeamSpaces also have a simple, role based rights management that acts on top of the globally defined permissions and can be administered by the users themselves to allow a cross-team sharing of results.

Choose Your Colors

ReportServer comes with a simple yet powerful theming mechanism. It can be as simple as choosing a set of colors and specifying your company logo. To finetune, you can easily override single CSS rules to get the look you want.

On the other end of the spectrum, and if you really want to dig in, you can integrate your custom stylesheets to make ReportServer fit perfectly into your corporate identity.

Audit-Proof Metadata

ReportServer prepares detailed documentation for every report. This includes all user defined configuration such as the selection of parameter values. On top, for dynamic lists, the documentation lists every selected attribute, filter, format, computed column etc.

ReportServer's automatic documentation is an audit-proof documentation explaining the origin of your data.

ReportServer is available in more than 60 languages*

  • Deutsch
  • Dansk
  • Eesti
  • Español
  • Français
  • Gaeilge
  • Hrvatski
  • Italiano
  • Nederlands
  • Japanese
  • Korean
  • Thai
  • Malaysian
  • Norwegian
  • Icelandic
  • Serbian
  • Vietnamese
  • Ukrainian
  • Latviešu
  • Lietuvių
  • Magyar
  • Malti
  • Polski
  • Português
  • Română
  • Slovenčina
  • Slovenščina
  • Luxembourgish
  • Afrikaans
  • Bengali
  • Albanian
  • Armenian
  • Basque
  • Bosnian
  • Georgian
  • Catalan
  • Suomi
  • Svenska
  • Türkçe
  • Čeština
  • Ελληνικά
  • Български
  • Pусский
  • 中文 (中国)
  • 中文 (台灣)
  • Rhindi
  • Macedonian
  • Myanmar
  • Laotian
  • Indonesian
  • Belorussian
  • Uzbek
  • Kazakh
  • Nepali

*Help us to create further translations or to improve existing translations.
We are looking to your support.


A special function of ReportServer is that it can be extended by the means of scripts. Scripts help you to accomplish various tasks faster and more efficient. Lighten your workload by automating recurring tasks or developing individually adapted functions.

Administrative Scripts

Administrators know: the service and maintenance of a reporting platform is a time consuming task. The script engine integrated in ReportServer provides you with full access to the object model as well as the service infrastructure of ReportServer. This gives a powerful tool for the automation of maintenance tasks.

Script Reports

Scripts can be used for the definition of entire reports providing you with the most flexible way to create reports yet. You want to join data from different sources or you need special output formats? Scripts offer wide-ranging possibilities from interactive reports to the generation of specialized output formats. And best of all, once you learn your way around scripting, script reports are easier to maintain and fast to set up.


Scripts allow you to implement customer specific enhancements without having to change ReportServer code or compiling ReportServer from scratch, thus, greatly minimizing the risk of incompatibilities with future versions.

There is a wide spectrum of possible extensions. From displaying additional information to the development of completely new modules: there are various ways to adjust ReportServer to fit your needs.

Script Datasources

Script datasources can be regarded as a special form of script reports. Therefore the wide ranging possibilities of the scripting engine for accessing and manipulating data are at your disposal. Subsequently, you can use the outcome as basis for reports or parameters.

And much more ...

  • Powerful Parameters
  • Entity Versioning
  • Import / Export
  • A large Number of Supported Datasources
  • Dynamic Script-based Datasources
  • Global Parameters
  • Easy Integrations
  • Report Configuration via URL
  • Interactive Reports
  • A Terminal for Administrators
  • Monitoring via JMX
  • ...

Flexible Parameters

Report designers can choose from a variety of parameters to allow for customization of reports.

ReportServer offers a wide range of flexible parameters to allow report customization. Report designers can choose from text-boxes, radio buttons, checkboxes, date parameters (manual input, datepicker or calculated from a formula), popups and more.
Parameters work the same across all report types, that is, it doesn't matter whether you work with a Dynamic List, a Jasper report, a BIRT report or a Crystal report.
Parameters can be static or dynamic. For example, you can populate your selection list by using a database query.
Allow users to upload files that become part of the reporting process. Coupled with script reports this allows you to create powerful mini-apps directly within ReportServer.
When working with dynamic parameters you can have parameters depend on one another. For example, first select a country, and then select a city from a list of cities within that country.
Script parameters are the solution to any fancy requirement you might have. Are you asked to display a map in order to select a city instead of a simple list? With script parameters the UI is completely up to you.

Interactive Dashboards

Present all key performance indicators on a single page.

  • Unlimited dashboards per user
  • Freely configurable by the user
  • Integrate any report on your dashboard
  • Fast access via bookmarks
  • Integrate Micro-Apps via HTML5

ReportServer dashboards can be easily integrated into third-party applications using iFrames. This allows you to, for example, add reporting capabilities to your products or present data and reports in a portal or web app.

Download ReportServer today
and see for yourself.

Scripting - Break out of the Box


ReportServer comes with a scripting interface that allows to tweak and adapt ReportServer to exactly fit your needs. ReportServer scripts (written in Groovy) can plug into and adapt almost any functionality provided by ReportServer. With ReportServer scripts you can, for example,

  • add custom output formats for the various reporting engines.
  • integrate ReportServer in your monitoring solution via JMX.
  • customize the scheduler to add custom notifications.
  • add custom and dynamic datasources.
  • integrate ReportServer into your authentication environment (e.g. LDAP).
  • create interactive reports or mini-apps.
  • add custom functionality to the user interface.
  • and much more ...

For further information on scripting have a look at the ReportServer scripting guide.


A reporting solution must be integrated the IT structure of a company. As much as we would like that such an integration task can be done at the touch of a button we know that every IT environment is unique. To allow a seamless integration into your IT setup ReportServer can be extended easily with a few lines of code to provide exactly the integration that you were looking for.

Whether you want to setup ReportServer to authenticate users against an active directory, to implement a custom single-sign on solution, integrate ReportServer into your monitoring solution or use ReportServer as a data generator (e.g., export dynamic lists as custom XML or CSV) for third-party systems. ReportServer scripting provides the means to achieve almost any type of integration.


Per default ReportServer comes with a standard username/password authentication mechanism. But what if, you wanted to integrate ReportServer into an existing authentication solution? For example, if you wanted to authenticate your users against an existing Active Directory, or implement a single-sign-on solution? ReportServer scripting allows you to do just that.

ReportServer scripts can plug into the authentication mechanism and replace it with whatever best suits your needs.

Script Reports and Mini-Apps

Script reports are powered by ReportServer scripts and thus bring the expressiveness of high-level programming to report designing. You can leverage the full power of the server as well as modern client technology such as jQuery or D3.

Script reports provide you with a limitless reporting engine and thereby allow you to go beyond reporting and for example develop data driven mini-apps for users to embed in their dashboards. Of course script reports can be parameterized as any other report in ReportServer giving you the most powerful and flexible reporting tool with which you can tackle almost any reporting request.

Script Datasources

Have you ever faced the following situation: a user asks you to add some data to the reporting platform that comes in a bizarre format, it requires accessing via a custom webservice-api, or where the format changes regularly? ReportServer has a solution for even the most difficult data integrations: ReportServer script datasources.

Script datasources run a ReportServer script whenever the datasource is accessed letting the script handle the request. The datasource can even access the report's parameters and thus provide a parameterized datasource for the occasion. In short, script datasources provide the most flexible method of integrating almost any sort of data into a reporting platform that you have ever seen.

The Grid Editor

ReportServer's Grid Editor is a very flexible spreadsheet like database editor that can be used in situations where you want to enable a user to do some basic data administration. Once defined the grid editor can be used as any report, that is, it can be used by users in their TeamSpace and users can even export the underlying data to Excel and schedule the report.

Script Extensions

ReportServer is built on top of an extensive plugin architecture that scripts can hook into. This allows you to extend ReportServer in various ways to fit your needs. Examples of possible extensions include:

  • add custom output formats for the various reporting engines.
  • customize the scheduler to add custom notifications.
  • add custom and dynamic datasources.
  • add custom functionality to the user interface.
  • synchronize the user database with an active directory.
  • programmatically execute reports and send the results to third party programs.
  • add custom scheduler targets (e.g., SFTP servers).
  • setup workflows.
  • automatically test existing reports.
  • and much more ...

For further information on scripting have a look at the ReportServer scripting guide.

Some Impressions