IndeX-Ray™ is a powerful visualization platform that gives developers super powers when it comes to database performance.
Find queries that your app generates, foresee issues that they will cause, and fix them before your users ever notice. Learn more below.
Special offer: get
unlimited lifetime access
to the IndeX-Ray playground for a one-time fee.
Support development and start enjoying pro features today
Hurry, there are limited spots available and it will never be offered at this price again.
| Feature | Free | Pro |
|---|---|---|
| Private by default | ||
| Live Queries [3] | ||
| Consult with experts | ||
| Pre-deployment insights during CI | ||
| Realtime data access visualization | ||
| Write any query [1] | ||
| Use your own schema [2] | ||
| Create, delete, and hide indexes | ||
| Optimization ratings | ||
| Index scan type reporting | ||
| Query underlining for scan type | ||
| Playground history | Limit 10, requires account | |
| Index suggestions | ||
| Modify statistics | ||
| Performance pointers | ||
| Coming Soon | ||
| Unlisted shares | ||
| Generate Playground | Requires account, limits apply | |
| Sync schema | ||
| Sync statistics | ||
| Save schema | ||
| Query rewrite suggestions | ||
| Start exploring | From $16/mo | |
[1] PostgreSQL-compatible SELECT statements.
[2] PostgreSQL-compatible DDL, limitations apply for
extensions and indexes other than the default B+ tree types
[3] Requires the pg_stat_statements extension to be enabled.
Features
Privacy
Powered by PGlite running locally in your browser and freely available open source packages such as analyzer, most features are available privately without requiring any external systems or communication. Keep your data safely where it belongs.
Live Queries: Inspect executed operations
Not sure how your app is interacting with the database? With Live Queries you instantly get full visibility to all operations that your database has been running.
Use the intuitive interface to quickly sift through the noise and identify the operations that may require attention. You'll also have contextualized guidance (such as indexing recommendations) directly in this view. Jump directly to the diagram to do a deep dive on any of the operations. Combine this with statistics for the most accurate feedback or with an app that uses Sqlcommenter for the ability to click to jump directly to the relevant source code.
Consult with Database Experts (and Enthusiasts!)
The Query Doctor community is full of folks who have been around databases for years. During that time they have learned a thing or two about the intricacies of databases and how their optimizers work, and they love sharing this knowledge. Being a part of this community gets you access to these remarkable resources. Bring your most perplexing questions and we'll learn and optimize the system together.
Pre-deployment insights
Tired of getting the page for the production outage after things worked fine during local development? Connect the functional testing from your existing CI flow to get performance feedback without requiring a full copy of the production environment. This safety net is ever-present with each commit, providing crucial feedback during the development process in the familiar Github environment. Deploy new queries and schema changes with confidence.
Click-to-code: Sqlcommenter integration
The layering of libraries and ORMs can make it difficult to figure out which line of code is responsible for generating a problematic query. We "speak" the Sqlcommenter language. All queries submitted by apps using Sqlcommenter will automatically have source code mapping information reported. And if you're using a supported IDE then just click the link to magically go directly to the relevant portion of the codebase.
Optimization ratings
Unclear if your query could be faster?
IndeX-Ray will show you how good (or bad!) the query is based on
possible indexing strategies relevant to your setup. Oftentimes a
missing index makes a world of difference, while other times a
table scan is as good as it gets. Don't waste time wondering
which situation you're in.
Performance suggestions
Looking for specific guidance to improve performance rather than just exploring with all of the great free features?
Get a variety of suggestions for improving query performance, including:
- Index suggestions - Whether simple or complex (e.g. using expressions), we'll find indexes that can make your query fly.
- Query rewrite suggestions - Sometimes the trick to improving performance is actually to tweak how the query is expressed to the database.
- General observations - Falling victim of a common anti-pattern? We'll find those too and point you in the right direction.
These suggestions are both contextual and specific. We take the entire query into consideration, check against the schema in the playground, and validate that the suggestions are valid (and beneficial).
Realtime query visualizations
Stop reading EXPLAIN output and take the guesswork out of query optimization. With as-you-type query visualization, you can now instantly see how the database runs any query on any schema. Fully configurable sample data allows you to also see how all objects are processed including those that are ultimately discarded.
Take things a step further with the ability to create, drop, or even "hide" indexes for the database to use. This is the fastest way to iterate on query performance and discover all of the clever plans that the database can come up with.
Scan type details
Using an index is not the same thing as using an index efficiently.
The critical information about how WHERE conditions (and JOIN clauses) are being evaluated is now at your fingertips with IndeX-Ray. Both in the diagram and embedded directly into the SQL text itself, quickly find out how the database is finding and filtering through its data when running a query.
StatisticsPRO
Query plans are created based on statistical metadata that the database captures about the information it stores. The more closely statistics in IndeX-Ray reflect those in the actual database, the more accurate the query plans will be.
Pro users get powerful tools in this regard, including the following abilities:
- Change the number of records in each table
- Modify per-column statistics, such as the number of distinct values
- Importing statistics directly from a source database
To improve accuracy and realism, IndeX-Ray defaults to planning queries as if there were 10,000 records in every table (including free users).
Import
Configure the environment directly from your source database.
With just a few clicks, you can connect your PostgreSQL database to IndeX-Ray and import the schema and statistics from it.
Want (or need) to keep the data from passing through our servers? Syncs can also be performed by running a local extension. This allows you to pull from a local database instance of PostgreSQL and also provides the ability to privately pull your data to your browser without ever passing through our servers.