Display SQL Server Execution Plans in HTML
TypeScript XSLT CSS JavaScript
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.



html-query-plan is a JavaScript library for showing Microsoft SQL Server execution plans in HTML.

html-query-plan screenshot

To use in a web page:

  • Find the latest release here.
  • Include qp.css and qp.min.js
  • Call QP.showPlan, passing the container in which to show the plan and the query plan XML (as a string).
<div id="container"></div>
    QP.showPlan(document.getElementById("container"), '<ShowPlanXML...');

See the examples folder for complete examples.


Additional options can be passed using the 3rd argument:

<div id="container"></div>
    var options = {
        jsTooltips: false
    QP.showPlan(document.getElementById("container"), '<ShowPlanXML...', options);
Option Default Description
jsTooltips true Set to false to use CSS tooltips.

Running XSLT separately

Under the covers, html-query-plan is an XSLT 1.0 stylesheet (qp.xslt), which can be used to pre-render the plan html. Javascript is still needed to draw the connecting lines. To do this, follow the above steps but call QP.drawLines instead:

<div id="container">
    <!-- Insert XSLT output here -->

Browser Support

Should work just fine in any modern browser. Tested in Chrome, Firefox and IE9+. IE8 and earlier have known issues.


The icons used are adapted from the Fat Cow "Farm Fresh" web icons pack, which can be found at http://www.fatcow.com/free-icons.


Run the following commands in bash to output minified and unminified versions in the dist folder:

npm run webpack && NODE_ENV=production npm run webpack


A big thankyou to Brent Ozar Unlimited (who make Paste The Plan) for sponsoring development of html-query-plan.