1<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=5, viewport-fit=cover"><meta name="theme-color" content="#0A1229"><title>Find and fix slow Postgres queries on Supabase and Neon with pganalyze</title><meta name="description" content="pganalyze now supports Supabase and Neon as monitored system types. Find and fix slow Postgres queries with statistics from pg_stat_statements, Log Insights delivered over OpenTelemetry, and EXPLAIN plan collection with auto_explain on Supabase."><link rel="canonical" href="https://pganalyze.com/blog/postgres-monitoring-for-neon-and-supabase"><link rel="icon" type="image/png" href="/favicon-32x32.png" sizes="32x32"><link rel="manifest" href="/manifest.webmanifest"><meta name="astro-view-transitions-enabled" content="true"><meta name="astro-view-transitions-fallback" content="swap">
1<script type="module" src="/_astro/ClientRouter.astro_astro_type_script_index_0_lang.B2LpM-Q1.js"></script>
1<meta property="og:title" content="Find and fix slow Postgres queries on Supabase and Neon with pganalyze"><meta property="og:description" content="pganalyze now supports Supabase and Neon as monitored system types. Find and fix slow Postgres queries with statistics from pg_stat_statements, Log Insights delivered over OpenTelemetry, and EXPLAIN plan collection with auto_explain on Supabase."><meta property="og:url" content="https://pganalyze.com/blog/postgres-monitoring-for-neon-and-supabase"><meta property="og:image" content="https://pganalyze.com/blog/postgres-monitoring-for-neon-and-supabase/pganalyze_OG_postgres-monitoring-for-neon-and-supabase.png"><meta property="og:type" content="article"><meta property="og:locale" content="en_US"><meta property="og:site_name" content="pganalyze"><meta property="og:article:section" content="PostgreSQL"><meta name="twitter:card" content="summary_large_image"><meta name="twitter:title" content="Find and fix slow Postgres queries on Supabase and Neon with pganalyze"><meta name="twitter:description" content="pganalyze now supports Supabase and Neon as monitored system types. Find and fix slow Postgres queries with statistics from pg_stat_statements, Log Insights delivered over OpenTelemetry, and EXPLAIN plan collection with auto_explain on Supabase."><meta name="twitter:image" content="https://pganalyze.com/blog/postgres-monitoring-for-neon-and-supabase/pganalyze_OG_postgres-monitoring-for-neon-and-supabase.png">
vendor: 63 bytes, line 1
1<script async src="https://www.googletagmanager.com/gtag/js?id=
1G-JC1695MR60
vendor: 11 bytes, line 1
1"></script>
1<script> 2
vendor: 162 bytes, lines 2-7
2window.dataLayer = window.dataLayer || []; 3 function gtag() { 4 dataLayer.push(arguments); 5 } 6 gtag("js", new Date()); 7 gtag("config", "
7AW-792224255
vendor: 10 bytes, lines 7-8
7"); 8
8gtag("config", "UA-38000103-1"); 9 gtag("config", "G-JC1695MR60"); 10 </script>
10<script id="hs-script-loader" async defer src="https://js.hs-scripts.com/2591017.js"></script>
10<meta name="google-site-verification" content="jwo6Sfz01I9cHrA_4ecWkW6pfIy5o7u1HaaQumzEiGI"><meta property="article:published_time" content="2026-08-13T15:00:00.000Z"><meta property="article:section" content="Industry">
10<script type="module">function e(){if(window.location.hash){var e=decodeURIComponent(window.location.hash.slice(1));setTimeout(function(){var t=document.getElementById(e);t&&t.scrollIntoView()},0)}}document.addEventListener(`astro:page-load`,e),document.addEventListener(`astro:after-swap`,function(){var e=window.location.pathname+window.location.search;typeof window.gtag==`function`&&window.gtag(`event`,`page_view`,{page_title:document.title,page_location:window.location.href,page_path:e}),window._hsq=window._hsq||[],window._hsq.push([`setPath`,e]),window._hsq.push([`trackPageView`])});</script>
10<link rel="stylesheet" href="/_astro/Footer.DAioG-Qg.css"><style>.MLd_Xq_form form{margin:0}.MLd_Xq_form input[type=text],.MLd_Xq_form input[type=email],.MLd_Xq_form input[type=tel],.MLd_Xq_form textarea{width:100%;padding:6px 8px;font-size:16px}.MLd_Xq_form label{font-weight:600}.MLd_Xq_form input[type=submit]{text-align:center;vertical-align:middle;cursor:pointer;color:#fff;background:#2ea9a9;border:2px solid #2ea9a9;border-radius:6px;margin-bottom:0;padding:9px 37px;font-size:14px;font-weight:600;line-height:19px;text-decoration:none;display:inline-block}.MLd_Xq_form input[type=submit]:hover{background:#34c2c2;border-color:#34c2c2}.MLd_Xq_form .hs-recaptcha{margin-bottom:10px} 11.W_cs5G_faIcon{width:1em;height:1em} 12.L8lE7q_headerBackground{background-color:var(--noctis-500);padding-top:calc(106px + env(safe-area-inset-top));z-index:-1;position:relative;overflow:hidden}.L8lE7q_headerBackground:after{content:"";background:linear-gradient(to bottom, transparent, var(--noctis-500));z-index:-1;pointer-events:none;width:100%;height:90%;position:absolute;bottom:0;left:0}@media (width<=1279px){.L8lE7q_headerBackground{padding-top:calc(72px + env(safe-area-inset-top))}}.L8lE7q_headerBackground h1,.L8lE7q_headerBackground p{color:#fff;text-align:center}.L8lE7q_headerBackground h1{letter-spacing:0;opacity:.9;font-size:26px;font-weight:600;line-height:32px}@media (width<=1279px){.L8lE7q_headerBackground h1{margin-top:16px}}.L8lE7q_headerBackground p{letter-spacing:0;opacity:.9;max-width:750px;margin:0 auto 32px;font-size:18px;line-height:1.4em}.L8lE7q_headerBackgroundGradient,.L8lE7q_headerBackgroundImage{z-index:-1;width:100%;height:1000px;position:absolute;top:0;left:0}.L8lE7q_headerBackgroundGradient{background:var(--gradient-aurora)}.L8lE7q_headerBackgroundImage{background-image:url(/_astro/pattern.BV53rgXL.svg);background-position:top;background-repeat:repeat-x}@media (width<=1279px){.L8lE7q_headerBackgroundImage{background-image:none}}.L8lE7q_secondaryNavParent{margin:0;position:relative}.L8lE7q_secondaryScrolled{z-index:1;width:100%;position:fixed;top:106px}@media (width<=1279px){.L8lE7q_secondaryScrolled{position:relative;top:auto}}.L8lE7q_headerCTAActions{text-align:center;z-index:1;margin-bottom:40px;position:relative}.L8lE7q_headerCTAActions .btn{border:2px solid var(--stardust-500);color:var(--stardust-500);background:0 0;border-radius:8px;margin:5px 10px 0 0}.L8lE7q_headerCTAActions .btn:hover{background-color:var(--stardust-500);color:var(--noctis-500)}.L8lE7q_headerCTAActions .btn-success{background-color:var(--stardust-500);color:var(--noctis-500);border-color:var(--stardust-500)}.L8lE7q_headerCTAActions .btn-success:hover{background-color:var(--stardust-400);border-color:var(--stardust-400)}.L8lE7q_secondaryNavGrouped{flex-wrap:wrap;justify-content:center;align-items:center;gap:0;padding:0 16px;display:flex}.L8lE7q_secondaryNavGroup{align-items:center;display:inline-flex}.L8lE7q_secondaryNavGroup a{color:#fff;text-shadow:none;opacity:.75;white-space:nowrap;padding:10px 8px 9px;font-size:13px;text-decoration:none;transition:opacity .15s}.L8lE7q_secondaryNavGroup a:hover{opacity:1;text-decoration:none}.L8lE7q_secondaryNavGroup a.active-secondary{opacity:1;font-weight:600}.L8lE7q_secondaryNavDivider{background-color:#fff3;flex-shrink:0;width:1px;height:16px;margin:0 4px}@media (width<=1150px){.L8lE7q_secondaryNavGrouped{padding:0 8px}.L8lE7q_secondaryNavGroup a{padding:10px 5px 9px;font-size:12px}}@media (width<=1024px){.L8lE7q_secondaryNavGrouped{gap:0;padding:0 8px}.L8lE7q_secondaryNavGroup a{padding:6px 5px;font-size:12px}.L8lE7q_secondaryNavDivider{height:14px;margin:0 2px}}@media (width<=979px){.L8lE7q_secondaryNavGrouped{flex-wrap:nowrap;justify-content:flex-start;padding:0 12px}.L8lE7q_secondaryNavGroup a{padding:10px 10px 9px;font-size:13px}.L8lE7q_secondaryNavDivider{height:16px;margin:0 4px}} 13</style>
13<script type="module" src="/_astro/page.BXhJUpbf.js"></script>
13</head><body class="blog_posts"><div style="position: relative; z-index: 0;"><style>astro-island,astro-slot,astro-static-slot{display:contents}</style>
13<script>(()=>{var e=async t=>{await(await t())()};(self.Astro||(self.Astro={})).only=e;window.dispatchEvent(new Event("astro:only"));})();</script>
13<script>(()=>{var g=Object.defineProperty;var w=(c,s,d)=>s in c?g(c,s,{enumerable:!0,configurable:!0,writable:!0,value:d}):c[s]=d;var l=(c,s,d)=>w(c,typeof s!="symbol"?s+"":s,d);var E=new Set(["__proto__","constructor","prototype"]);{let c={0:t=>y(t),1:t=>d(t),2:t=>new RegExp(t),3:t=>new Date(t),4:t=>new Map(d(t)),5:t=>new Set(d(t)),6:t=>BigInt(t),7:t=>new URL(t),8:t=>new Uint8Array(t),9:t=>new Uint16Array(t),10:t=>new Uint32Array(t),11:t=>Number.POSITIVE_INFINITY*t},s=t=>{let[p,e]=t;return p in c?c[p](e):void 0},d=t=>t.map(s),y=t=>typeof t!="object"||t===null?t:Object.fromEntries(Object.entries(t).map(([p,e])=>[p,s(e)]));class f extends HTMLElement{constructor(){super(...arguments);l(this,"Component");l(this,"hydrator");l(this,"hydrate",async()=>{var b;if(!this.hydrator||!this.isConnected)return;let e=(b=this.parentElement)==null?void 0:b.closest("astro-island[ssr]");if(e){e.addEventListener("astro:hydrate",this.hydrate,{once:!0});return}let n=this.querySelectorAll("astro-slot"),r={},i=this.querySelectorAll("template[data-astro-template]");for(let o of i){let a=o.closest(this.tagName);a!=null&&a.isSameNode(this)&&(r[o.getAttribute("data-astro-template")||"default"]=o.innerHTML,o.remove())}for(let o of n){let a=o.closest(this.tagName);a!=null&&a.isSameNode(this)&&(r[o.getAttribute("name")||"default"]=o.innerHTML)}let u;try{u=this.hasAttribute("props")?y(JSON.parse(this.getAttribute("props"))):{}}catch(o){let a=this.getAttribute("component-url")||"<unknown>",v=this.getAttribute("component-export");throw v&&(a+=` (export ${v})`),console.error(`[hydrate] Error parsing props for component ${a}`,this.getAttribute("props"),o),o}let h;await this.hydrator(this)(this.Component,u,r,{client:this.getAttribute("client")}),this.removeAttribute("ssr"),this.dispatchEvent(new CustomEvent("astro:hydrate"))});l(this,"unmount",()=>{this.isConnected||this.dispatchEvent(new CustomEvent("astro:unmount"))})}disconnectedCallback(){document.removeEventListener("astro:after-swap",this.unmount),document.addEventListener("astro:after-swap",this.unmount,{once:!0})}connectedCallback(){if(!this.hasAttribute("await-children")||document.readyState==="interactive"||document.readyState==="complete")this.childrenConnectedCallback();else{let e=()=>{document.removeEventListener("DOMContentLoaded",e),n.disconnect(),this.childrenConnectedCallback()},n=new MutationObserver(()=>{var r;((r=this.lastChild)==null?void 0:r.nodeType)===Node.COMMENT_NODE&&this.lastChild.nodeValue==="astro:end"&&(this.lastChild.remove(),e())});n.observe(this,{childList:!0}),document.addEventListener("DOMContentLoaded",e)}}async childrenConnectedCallback(){let e=this.getAttribute("before-hydration-url");e&&await import(e),this.start()}getRetryImportUrl(e){let n=new URL(e,document.baseURI),r=`astro-retry=${Date.now()}`,i=n.hash.replace(/^#/,"");return n.hash=i?`${i}&${r}`:r,n.toString()}async importWithRetry(e){try{return await import(e)}catch(n){return await new Promise(r=>setTimeout(r,1e3)),import(this.getRetryImportUrl(e))}}handleHydrationError(e){let n=this.getAttribute("component-url"),r=new CustomEvent("astro:hydration-error",{cancelable:!0,bubbles:!0,composed:!0,detail:{error:e,componentUrl:n}});this.dispatchEvent(r)&&console.error(`[astro-island] Error hydrating ${n}`,e)}async start(){let e=JSON.parse(this.getAttribute("opts")),n=this.getAttribute("client");if(Astro[n]===void 0){window.addEventListener(`astro:${n}`,()=>this.start(),{once:!0});return}try{await Astro[n](async()=>{let r=this.getAttribute("renderer-url");try{let[i,{default:u}]=await Promise.all([this.importWithRetry(this.getAttribute("component-url")),r?this.importWithRetry(r):Promise.resolve({default:()=>()=>{}})]),h=this.getAttribute("component-export")||"default";if(h.includes(".")){this.Component=i;for(let m of h.split(".")){if(E.has(m)||!this.Component||typeof this.Component!="object"&&typeof this.Component!="function"||!Object.hasOwn(this.Component,m))throw new Error(`Invalid component export path: ${h}`);this.Component=this.Component[m]}}else{if(E.has(h))throw new Error(`Invalid component export path: ${h}`);this.Component=i[h]}return this.hydrator=u,this.hydrate}catch(i){return this.handleHydrationError(i),()=>{}}},e,this)}catch(r){this.handleHydrationError(r)}}attributeChangedCallback(){this.hydrate()}}l(f,"observedAttributes",["props"]),customElements.get("astro-island")||customElements.define("astro-island",f)}})();</script>
13<astro-island uid="20uDMy" component-url="/_astro/index.tTIRg0ao.js" component-export="default" renderer-url="/_astro/client.Dqz2Vqct.js" props="{}" ssr client="only" opts="{"name":"RememberUtmValues","value":"react"}"></astro-island>
13<script>(()=>{var e=async t=>{await(await t())()};(self.Astro||(self.Astro={})).load=e;window.dispatchEvent(new Event("astro:load"));})();</script>
13<astro-island uid="2urlh4" prefix="r4" component-url="/_astro/index.CIQx_Htk.js" component-export="default" renderer-url="/_astro/client.Dqz2Vqct.js" props="{"currentPath":[0,"/blog/postgres-monitoring-for-neon-and-supabase/"]}" ssr client="load" opts="{"name":"Header","value":true}" await-children><div class="tw-scope"><a href="#main-navigation" class="absolute left-4 top-3 z-[2000] -translate-y-[200%] rounded-md bg-stardust-500 px-4 py-2 focus:translate-y-0"><span class="text-[16px] font-medium text-noctis-500">Skip to navigation</span></a></div><div><div class="promotion-banner">Find and fix slow Postgres queries on Supabase & Neon:<!-- --> <a href="/blog/postgres-monitoring-for-neon-and-supabase"><strong>pganalyze now supports both platforms</strong></a></div><div class="tw-scope"><div class="nav-bar"><nav aria-label="Main" id="main-navigation" tabindex="-1" class="nav-shell"><a href="/" class="shrink-0 rounded-md focus-visible:bg-white/10"><img src="/_astro/pga_rect_light.C_LAdX-o.svg" alt="pganalyze" class="h-[40px] w-auto xl:h-[50px]"/></a><ul class="hidden items-center gap-1 xl:flex"><li><a href="/docs" class="group flex items-center gap-1 rounded-md px-2.5 py-1 hover:bg-white/10 focus-visible:bg-white/10"><span class="text-[16px]/[1.3] group-hover:text-stardust-500 group-focus-visible:text-stardust-500 text-sand-100">Docs</span></a></li><li class="relative"><button type="button" aria-haspopup="true" aria-expanded="false" aria-controls="nav-panel-features" class="group flex items-center gap-1 rounded-md px-2.5 py-1 hover:bg-white/10 focus-visible:bg-white/10 cursor-pointer border-0 bg-transparent"><span class="text-[16px]/[1.3] text-sand-100 group-hover:text-stardust-500 group-focus-visible:text-stardust-500">Features</span><svg data-prefix="far" data-icon="chevron-down" class="svg-inline--fa fa-chevron-down W_cs5G_faIcon text-[12px] text-sand-100 group-hover:text-stardust-500 group-focus-visible:text-stardust-500" role="img" viewBox="0 0 448 512" aria-hidden="true"><path fill="currentColor" d="M207.5 409c9.4 9.4 24.6 9.4 33.9 0l200-200c9.4-9.4 9.4-24.6 0-33.9s-24.6-9.4-33.9 0l-183 183-183-183c-9.4-9.4-24.6-9.4-33.9 0s-9.4 24.6 0 33.9l200 200z"></path></svg></button><div class="absolute left-0 top-full z-10 pt-1 hidden"><div id="nav-panel-features" class="rounded-md bg-sand-500 p-4 shadow-dropdown w-[433px]"><div class="mb-3 font-cera-mono text-[12px] uppercase tracking-[0.6px] text-noctis-300">Our Key Features</div><div class="flex flex-col gap-1"><a href="/postgres-query-advisor" class="group flex items-start gap-2 rounded-md p-3 hover:bg-white focus-visible:bg-white"><span class="flex h-8 w-8 shrink-0 items-center justify-center text-stratos-500"><svg data-prefix="far" data-icon="code-pull-request-draft" class="svg-inline--fa fa-code-pull-request-draft W_cs5G_faIcon text-[24px]" role="img" viewBox="0 0 384 512" aria-hidden="true"><path fill="currentColor" d="M80 48a32 32 0 1 1 0 64 32 32 0 1 1 0-64zm24 108.3c32.5-10.2 56-40.5 56-76.3 0-44.2-35.8-80-80-80S0 35.8 0 80c0 35.8 23.5 66.1 56 76.3l0 199.3c-32.5 10.2-56 40.5-56 76.3 0 44.2 35.8 80 80 80s80-35.8 80-80c0-35.8-23.5-66.1-56-76.3l0-199.3zM112 432c0 17.7-14.3 32-32 32s-32-14.3-32-32 14.3-32 32-32 32 14.3 32 32zm224 0c0 17.7-14.3 32-32 32s-32-14.3-32-32 14.3-32 32-32 32 14.3 32 32zm48 0c0-44.2-35.8-80-80-80s-80 35.8-80 80 35.8 80 80 80 80-35.8 80-80zM344 80a40 40 0 1 0 -80 0 40 40 0 1 0 80 0zM304 272a40 40 0 1 0 0-80 40 40 0 1 0 0 80z"></path></svg></span><span class="flex flex-col gap-0.5"><span class="text-[16px] font-medium group-hover:text-stratos-500 group-focus-visible:text-stratos-500 text-noctis-500">Query Advisor</span><span class="text-[14px] text-noctis-300">Detect and fix Postgres query plan problems</span></span></a><a href="/postgres-index-advisor" class="group flex items-start gap-2 rounded-md p-3 hover:bg-white focus-visible:bg-white"><span class="flex h-8 w-8 shrink-0 items-center justify-center text-stratos-500"><svg data-prefix="far" data-icon="radar" class="svg-inline--fa fa-radar W_cs5G_faIcon text-[24px]" role="img" viewBox="0 0 512 512" aria-hidden="true">
13<path fill="currentColor" d="M304.8 173.3c-14.3-8.4-31-13.3-48.8-13.3-53 0-96 43-96 96s43 96 96 96 96-43 96-96l48 0c0 79.5-64.5 144-144 144s-144-64.5-144-144 64.5-144 144-144c31.1 0 59.9 9.9 83.4 26.6l45.7-45.7C349.7 64.8 304.8 48 256 48 141.1 48 48 141.1 48 256s93.1 208 208 208 208-93.1 208-208l48 0c0 141.4-114.6 256-256 256S0 397.4 0 256 114.6 0 256 0c62.1 0 118.9 22.1 163.3 58.8L463 15c9.4-9.4 24.6-9.4 33.9 0s9.4 24.6 0 33.9L273 273c-9.4 9.4-24.6 9.4-33.9 0s-9.4-24.6 0-33.9l65.7-65.7z"></path></svg></span><span class="flex flex-col gap-0.5"><span class="text-[16px] font-medium group-hover:text-stratos-500 group-focus-visible:text-stratos-500 text-noctis-500">Index Advisor</span><span class="text-[14px] text-noctis-300">Faster queries, less guesswork</span></span></a><a href="/postgres-vacuum-advisor" class="group flex items-start gap-2 rounded-md p-3 hover:bg-white focus-visible:bg-white"><span class="flex h-8 w-8 shrink-0 items-center justify-center text-stratos-500"><svg data-prefix="far" data-icon="circle-notch" class="svg-inline--fa fa-circle-notch W_cs5G_faIcon text-[24px]" role="img" viewBox="0 0 512 512" aria-hidden="true"><path fill="currentColor" d="M223.2 25C226.4 37.9 218.6 50.9 205.7 54.1 115.1 76.6 48 158.5 48 256 48 370.9 141.1 464 256 464s208-93.1 208-208c0-97.5-67.1-179.4-157.7-201.9-12.9-3.2-20.7-16.2-17.5-29.1S305 4.3 317.9 7.5C429.4 35.2 512 135.9 512 256 512 397.4 397.4 512 256 512S0 397.4 0 256C0 135.9 82.6 35.2 194.1 7.5 207 4.3 220 12.2 223.2 25z"></path></svg></span><span class="flex flex-col gap-0.5"><span class="text-[16px] font-medium group-hover:text-stratos-500 group-focus-visible:text-stratos-500 text-noctis-500">VACUUM Advisor</span><span class="text-[14px] text-noctis-300">Optimize bloat, freezing and VACUUM performance</span></span></a><a href="/postgres-query-tuning-workbooks" class="group flex items-start gap-2 rounded-md p-3 hover:bg-white focus-visible:bg-white"><span class="flex h-8 w-8 shrink-0 items-center justify-center text-stratos-500"><svg data-prefix="far" data-icon="books" class="svg-inline--fa fa-books W_cs5G_faIcon text-[24px]" role="img" viewBox="0 0 576 512" aria-hidden="true"><path fill="currentColor" d="M96.3 48l48 0c8.8 0 16 7.2 16 16l0 32-80 0 0-32c0-8.8 7.2-16 16-16zm-16 96l80 0 0 224-80 0 0-224zm128-78l0-2c0-35.3-28.7-64-64-64l-48 0c-35.3 0-64 28.7-64 64l0 384c0 35.3 28.7 64 64 64l48 0c15.1 0 29-5.3 40-14 11 8.8 24.9 14 40 14l48 0c35.3 0 64-28.7 64-64l0-164.4 48.6 181.2c9.1 34.1 44.2 54.4 78.4 45.3l46.4-12.4c34.1-9.1 54.4-44.2 45.3-78.4L455.4 48.3C446.3 14.2 411.2-6.1 377 3.1L330.7 15.5c-24.4 6.5-41.8 26.4-46.3 49.7-3.9-.8-8-1.1-12.1-1.1l-48 0c-5.5 0-10.9 .7-16 2zm0 62c0-8.8 7.2-16 16-16l48 0c8.8 0 16 7.2 16 16l0 320c0 8.8-7.2 16-16 16l-48 0c-8.8 0-16-7.2-16-16l0-320zm-48 320c0 8.8-7.2 16-16 16l-48 0c-8.8 0-16-7.2-16-16l0-32 80 0 0 32zM389.5 49.4c8.5-2.3 17.3 2.8 19.6 11.3l8.3 30.9-77.3 20.7-8.3-30.9c-2.3-8.5 2.8-17.3 11.3-19.6l46.4-12.4zm21 325.7l-58-216.4 77.3-20.7 58 216.4-77.3 20.7zm12.4 46.4l77.3-20.7 8.3 30.9c2.3 8.5-2.8 17.3-11.3 19.6l-46.4 12.4c-8.5 2.3-17.3-2.8-19.6-11.3l-8.3-30.9z"></path></svg></span><span class="flex flex-col gap-0.5"><span class="text-[16px] font-medium group-hover:text-stratos-500 group-focus-visible:text-stratos-500 text-noctis-500">Workbooks</span><span class="text-[14px] text-noctis-300">Dedicated environment for query optimization</span></span></a></div><a href="/postgres-query-advisor" class="group mt-4 flex items-center justify-center rounded-md bg-noctis-500 py-2.5 hover:bg-noctis-400 focus-visible:bg-noctis-400"><span class="flex items-center gap-2 text-[16px] font-medium text-sand-100">All features<svg data-prefix="far" data-icon="arrow-right" class="svg-inline--fa fa-arrow-right W_cs5G_faIcon text-[14px]" role="img" viewBox="0 0 512 512" aria-hidden="true"><path fill="currentColor" d="M505 273c9.4-9.4 9.4-24.6 0-33.9L337 71c-9.4-9.4-24.6-9.4-33.9 0s-9.4 24.6 0 33.9l127 127-406.1 0c-13.3 0-24 10.7-24 24s10.7 24 24 24l406.1 0-127 127c-9.4 9.4-9.4 24.6 0 33.9s24.6 9.4 33.9 0L505 273z"></path></svg></span></a></div></div></li><li class="relative"><button type="button" aria-haspopup="true" aria-expanded="false" aria-controls="nav-panel-solutions" class="group flex items-center gap-1 rounded-md px-2.5 py-1 hover:bg-white/10 focus-visible:bg-white/10 cursor-pointer border-0 bg-transparent"><span class="text-[16px]/[1.3] text-sand-100 group-hover:text-stardust-500 group-focus-visible:text-stardust-500">Solutions</span><svg data-prefix="far" data-icon="chevron-down" class="svg-inline--fa fa-chevron-down W_cs5G_faIcon text-[12px] text-sand-100 group-hover:text-stardust-500 group-focus-visible:text-stardust-500" role="img" viewBox="0 0 448 512" aria-hidden="true">
13<path fill="currentColor" d="M207.5 409c9.4 9.4 24.6 9.4 33.9 0l200-200c9.4-9.4 9.4-24.6 0-33.9s-24.6-9.4-33.9 0l-183 183-183-183c-9.4-9.4-24.6-9.4-33.9 0s-9.4 24.6 0 33.9l200 200z"></path></svg></button><div class="absolute left-0 top-full z-10 pt-1 hidden"><div id="nav-panel-solutions" class="rounded-md bg-sand-500 p-4 shadow-dropdown w-[220px]"><div class="flex flex-col gap-3"><a href="/solutions/slow-postgres-queries" class="group block"><span class="text-[16px] group-hover:text-stratos-500 group-hover:underline group-hover:decoration-stratos-500/50 group-focus-visible:text-stratos-500 group-focus-visible:underline group-focus-visible:decoration-stratos-500/50 text-noctis-500">Fix Slow Queries</span></a><a href="/enterprise-postgres-monitoring" class="group block"><span class="text-[16px] group-hover:text-stratos-500 group-hover:underline group-hover:decoration-stratos-500/50 group-focus-visible:text-stratos-500 group-focus-visible:underline group-focus-visible:decoration-stratos-500/50 text-noctis-500">Enterprise Scale</span></a></div></div></div></li><li><a href="/pricing" class="group flex items-center gap-1 rounded-md px-2.5 py-1 hover:bg-white/10 focus-visible:bg-white/10"><span class="text-[16px]/[1.3] group-hover:text-stardust-500 group-focus-visible:text-stardust-500 text-sand-100">Pricing</span></a></li><li><a href="/blog" class="group flex items-center gap-1 rounded-md px-2.5 py-1 hover:bg-white/10 focus-visible:bg-white/10 bg-white/10"><span class="text-[16px]/[1.3] group-hover:text-stardust-500 group-focus-visible:text-stardust-500 text-stardust-500">Blog</span></a></li><li class="relative"><button type="button" aria-haspopup="true" aria-expanded="false" aria-controls="nav-panel-resources" class="group flex items-center gap-1 rounded-md px-2.5 py-1 hover:bg-white/10 focus-visible:bg-white/10 cursor-pointer border-0 bg-transparent"><span class="text-[16px]/[1.3] text-sand-100 group-hover:text-stardust-500 group-focus-visible:text-stardust-500">Resources</span><svg data-prefix="far" data-icon="chevron-down" class="svg-inline--fa fa-chevron-down W_cs5G_faIcon text-[12px] text-sand-100 group-hover:text-stardust-500 group-focus-visible:text-stardust-500" role="img" viewBox="0 0 448 512" aria-hidden="true"><path fill="currentColor" d="M207.5 409c9.4 9.4 24.6 9.4 33.9 0l200-200c9.4-9.4 9.4-24.6 0-33.9s-24.6-9.4-33.9 0l-183 183-183-183c-9.4-9.4-24.6-9.4-33.9 0s-9.4 24.6 0 33.9l200 200z"></path></svg></button><div class="absolute left-0 top-full z-10 pt-1 hidden"><div id="nav-panel-resources" class="rounded-md bg-sand-500 p-4 shadow-dropdown w-[220px]"><div class="flex flex-col gap-3"><a href="/resources/webinars" class="group block"><span class="text-[16px] group-hover:text-stratos-500 group-hover:underline group-hover:decoration-stratos-500/50 group-focus-visible:text-stratos-500 group-focus-visible:underline group-focus-visible:decoration-stratos-500/50 text-noctis-500">Webinars</span></a><a href="/resources/ebooks" class="group block"><span class="text-[16px] group-hover:text-stratos-500 group-hover:underline group-hover:decoration-stratos-500/50 group-focus-visible:text-stratos-500 group-focus-visible:underline group-focus-visible:decoration-stratos-500/50 text-noctis-500">eBooks</span></a><a href="/resources/tools" class="group block"><span class="text-[16px] group-hover:text-stratos-500 group-hover:underline group-hover:decoration-stratos-500/50 group-focus-visible:text-stratos-500 group-focus-visible:underline group-focus-visible:decoration-stratos-500/50 text-noctis-500">Tools</span></a><a href="/customers" class="group block"><span class="text-[16px] group-hover:text-stratos-500 group-hover:underline group-hover:decoration-stratos-500/50 group-focus-visible:text-stratos-500 group-focus-visible:underline group-focus-visible:decoration-stratos-500/50 text-noctis-500">Customer Stories</span></a><a href="/blog" class="group block"><span class="text-[16px] group-hover:text-stratos-500 group-hover:underline group-hover:decoration-stratos-500/50 group-focus-visible:text-stratos-500 group-focus-visible:underline group-focus-visible:decoration-stratos-500/50 font-medium text-stratos-500">Blog</span></a><a href="/newsletter" class="group block"><span class="text-[16px] group-hover:text-stratos-500 group-hover:underline group-hover:decoration-stratos-500/50 group-focus-visible:text-stratos-500 group-focus-visible:underline group-focus-visible:decoration-stratos-500/50 text-noctis-500">Newsletter</span></a></div></div></div></li><li class="relative"><button type="button" aria-haspopup="true" aria-expanded="false" aria-controls="nav-panel-company" class="group flex items-center gap-1 rounded-md px-2.5 py-1 hover:bg-white/10 focus-visible:bg-white/10 cursor-pointer border-0 bg-transparent"><span class="text-[16px]/[1.3] text-sand-100 group-hover:text-stardust-500 group-focus-visible:text-stardust-500">Company</span><svg data-prefix="far" data-icon="chevron-down" class="svg-inline--fa fa-chevron-down W_cs5G_faIcon text-[12px] text-sand-100 group-hover:text-stardust-500 group-focus-visible:text-stardust-500" role="img" viewBox="0 0 448 512" aria-hidden="true">
13<path fill="currentColor" d="M207.5 409c9.4 9.4 24.6 9.4 33.9 0l200-200c9.4-9.4 9.4-24.6 0-33.9s-24.6-9.4-33.9 0l-183 183-183-183c-9.4-9.4-24.6-9.4-33.9 0s-9.4 24.6 0 33.9l200 200z"></path></svg></button><div class="absolute left-0 top-full z-10 pt-1 hidden"><div id="nav-panel-company" class="rounded-md bg-sand-500 p-4 shadow-dropdown w-[220px]"><div class="flex flex-col gap-3"><a href="/about" class="group block"><span class="text-[16px] group-hover:text-stratos-500 group-hover:underline group-hover:decoration-stratos-500/50 group-focus-visible:text-stratos-500 group-focus-visible:underline group-focus-visible:decoration-stratos-500/50 text-noctis-500">About us</span></a><a href="/careers" class="group block"><span class="text-[16px] group-hover:text-stratos-500 group-hover:underline group-hover:decoration-stratos-500/50 group-focus-visible:text-stratos-500 group-focus-visible:underline group-focus-visible:decoration-stratos-500/50 text-noctis-500">Careers</span></a></div></div></div></li><li><a href="/contact" class="group flex items-center gap-1 rounded-md px-2.5 py-1 hover:bg-white/10 focus-visible:bg-white/10"><span class="text-[16px]/[1.3] group-hover:text-stardust-500 group-focus-visible:text-stardust-500 text-sand-100">Contact</span></a></li></ul><div class="flex items-center"><div class="hidden items-center gap-6 xl:flex"><a href="https://app.pganalyze.com/users/sign_in" class="group flex items-center rounded-md px-2 py-1 hover:bg-white/10 focus-visible:bg-white/10"><span class="text-[16px]/[1.3] text-sand-100 group-hover:text-stardust-500 group-focus-visible:text-stardust-500">Login</span></a><a href="https://app.pganalyze.com/users/sign_up" class="rounded-md bg-stardust-500 px-3.5 py-2 hover:bg-stardust-400 focus-visible:bg-stardust-400"><span class="text-[16px] font-medium text-noctis-500">Free Trial</span></a></div><button type="button" aria-expanded="false" class="flex cursor-pointer items-center gap-1.5 rounded-md border-0 bg-transparent p-2 text-sand-100 focus-visible:bg-white/10 xl:hidden"><svg data-prefix="far" data-icon="bars" class="svg-inline--fa fa-bars W_cs5G_faIcon text-[20px]" role="img" viewBox="0 0 448 512" aria-hidden="true"><path fill="currentColor" d="M0 88C0 74.7 10.7 64 24 64l400 0c13.3 0 24 10.7 24 24s-10.7 24-24 24L24 112C10.7 112 0 101.3 0 88zM0 256c0-13.3 10.7-24 24-24l400 0c13.3 0 24 10.7 24 24s-10.7 24-24 24L24 280c-13.3 0-24-10.7-24-24zM448 424c0 13.3-10.7 24-24 24L24 448c-13.3 0-24-10.7-24-24s10.7-24 24-24l400 0c13.3 0 24 10.7 24 24z"></path></svg><span class="text-[16px]">Menu</span></button></div></nav></div><div class="tw-scope fixed inset-0 z-[1030] flex flex-col font-cera xl:hidden bg-noctis-500 hidden"><div class="flex shrink-0 items-center justify-between bg-noctis-500 px-4 pb-4 pt-[calc(1rem_+_env(safe-area-inset-top))]"><a href="/" class="shrink-0"><img src="/_astro/pga_rect_light.C_LAdX-o.svg" alt="pganalyze" class="h-[40px] w-auto"/></a><button type="button" class="flex cursor-pointer items-center gap-1.5 rounded-md border-0 bg-transparent p-2 text-sand-100 focus-visible:bg-white/10"><svg data-prefix="far" data-icon="xmark" class="svg-inline--fa fa-xmark W_cs5G_faIcon text-[20px]" role="img" viewBox="0 0 384 512" aria-hidden="true"><path fill="currentColor" d="M7.5 105c-9.4-9.4-9.4-24.6 0-33.9s24.6-9.4 33.9 0l151 151 151-151c9.4-9.4 24.6-9.4 33.9 0s9.4 24.6 0 33.9l-151 151 151 151c9.4 9.4 9.4 24.6 0 33.9s-24.6 9.4-33.9 0l-151-151-151 151c-9.4 9.4-24.6 9.4-33.9 0s-9.4-24.6 0-33.9l151-151-151-151z"></path></svg><span class="text-[16px]">Close</span></button></div><div class="relative flex grow flex-col gap-8 overflow-y-auto rounded-t-3xl bg-sand-500 px-4 pt-4 pb-24 nav-sheet-in"><nav aria-label="Mobile" class="relative z-10 flex flex-col gap-2"><a href="/docs" class="block rounded-lg bg-white p-4 text-[18px] focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-stratos-500"><span class="text-noctis-500">Docs</span></a><div class="overflow-hidden rounded-lg bg-white"><button type="button" aria-expanded="false" class="flex w-full cursor-pointer items-center justify-between border-0 p-4 text-left focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-stratos-500 bg-transparent"><span class="text-[18px] text-noctis-500">Features</span><svg data-prefix="far" data-icon="chevron-down" class="svg-inline--fa fa-chevron-down W_cs5G_faIcon text-[16px] text-noctis-500" role="img" viewBox="0 0 448 512" aria-hidden="true">
13<path fill="currentColor" d="M207.5 409c9.4 9.4 24.6 9.4 33.9 0l200-200c9.4-9.4 9.4-24.6 0-33.9s-24.6-9.4-33.9 0l-183 183-183-183c-9.4-9.4-24.6-9.4-33.9 0s-9.4 24.6 0 33.9l200 200z"></path></svg></button><div class="nav-drawer"><div class="px-4"><a href="/postgres-query-advisor" class="py-4 border-b border-noctis-100 last:border-b-0 focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-stratos-500 flex items-start gap-3"><span class="flex h-6 w-6 shrink-0 items-center justify-center text-stratos-500"><svg data-prefix="far" data-icon="code-pull-request-draft" class="svg-inline--fa fa-code-pull-request-draft W_cs5G_faIcon text-[20px]" role="img" viewBox="0 0 384 512" aria-hidden="true"><path fill="currentColor" d="M80 48a32 32 0 1 1 0 64 32 32 0 1 1 0-64zm24 108.3c32.5-10.2 56-40.5 56-76.3 0-44.2-35.8-80-80-80S0 35.8 0 80c0 35.8 23.5 66.1 56 76.3l0 199.3c-32.5 10.2-56 40.5-56 76.3 0 44.2 35.8 80 80 80s80-35.8 80-80c0-35.8-23.5-66.1-56-76.3l0-199.3zM112 432c0 17.7-14.3 32-32 32s-32-14.3-32-32 14.3-32 32-32 32 14.3 32 32zm224 0c0 17.7-14.3 32-32 32s-32-14.3-32-32 14.3-32 32-32 32 14.3 32 32zm48 0c0-44.2-35.8-80-80-80s-80 35.8-80 80 35.8 80 80 80 80-35.8 80-80zM344 80a40 40 0 1 0 -80 0 40 40 0 1 0 80 0zM304 272a40 40 0 1 0 0-80 40 40 0 1 0 0 80z"></path></svg></span><span class="flex flex-col gap-0.5"><span class="text-[16px] font-medium text-noctis-500">Query Advisor</span><span class="text-[14px] text-noctis-300">Detect and fix Postgres query plan problems</span></span></a><a href="/postgres-index-advisor" class="py-4 border-b border-noctis-100 last:border-b-0 focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-stratos-500 flex items-start gap-3"><span class="flex h-6 w-6 shrink-0 items-center justify-center text-stratos-500"><svg data-prefix="far" data-icon="radar" class="svg-inline--fa fa-radar W_cs5G_faIcon text-[20px]" role="img" viewBox="0 0 512 512" aria-hidden="true"><path fill="currentColor" d="M304.8 173.3c-14.3-8.4-31-13.3-48.8-13.3-53 0-96 43-96 96s43 96 96 96 96-43 96-96l48 0c0 79.5-64.5 144-144 144s-144-64.5-144-144 64.5-144 144-144c31.1 0 59.9 9.9 83.4 26.6l45.7-45.7C349.7 64.8 304.8 48 256 48 141.1 48 48 141.1 48 256s93.1 208 208 208 208-93.1 208-208l48 0c0 141.4-114.6 256-256 256S0 397.4 0 256 114.6 0 256 0c62.1 0 118.9 22.1 163.3 58.8L463 15c9.4-9.4 24.6-9.4 33.9 0s9.4 24.6 0 33.9L273 273c-9.4 9.4-24.6 9.4-33.9 0s-9.4-24.6 0-33.9l65.7-65.7z"></path></svg></span><span class="flex flex-col gap-0.5"><span class="text-[16px] font-medium text-noctis-500">Index Advisor</span><span class="text-[14px] text-noctis-300">Faster queries, less guesswork</span></span></a><a href="/postgres-vacuum-advisor" class="py-4 border-b border-noctis-100 last:border-b-0 focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-stratos-500 flex items-start gap-3"><span class="flex h-6 w-6 shrink-0 items-center justify-center text-stratos-500"><svg data-prefix="far" data-icon="circle-notch" class="svg-inline--fa fa-circle-notch W_cs5G_faIcon text-[20px]" role="img" viewBox="0 0 512 512" aria-hidden="true"><path fill="currentColor" d="M223.2 25C226.4 37.9 218.6 50.9 205.7 54.1 115.1 76.6 48 158.5 48 256 48 370.9 141.1 464 256 464s208-93.1 208-208c0-97.5-67.1-179.4-157.7-201.9-12.9-3.2-20.7-16.2-17.5-29.1S305 4.3 317.9 7.5C429.4 35.2 512 135.9 512 256 512 397.4 397.4 512 256 512S0 397.4 0 256C0 135.9 82.6 35.2 194.1 7.5 207 4.3 220 12.2 223.2 25z"></path></svg></span><span class="flex flex-col gap-0.5"><span class="text-[16px] font-medium text-noctis-500">VACUUM Advisor</span><span class="text-[14px] text-noctis-300">Optimize bloat, freezing and VACUUM performance</span></span></a><a href="/postgres-query-tuning-workbooks" class="py-4 border-b border-noctis-100 last:border-b-0 focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-stratos-500 flex items-start gap-3"><span class="flex h-6 w-6 shrink-0 items-center justify-center text-stratos-500"><svg data-prefix="far" data-icon="books" class="svg-inline--fa fa-books W_cs5G_faIcon text-[20px]" role="img" viewBox="0 0 576 512" aria-hidden="true">
13<path fill="currentColor" d="M96.3 48l48 0c8.8 0 16 7.2 16 16l0 32-80 0 0-32c0-8.8 7.2-16 16-16zm-16 96l80 0 0 224-80 0 0-224zm128-78l0-2c0-35.3-28.7-64-64-64l-48 0c-35.3 0-64 28.7-64 64l0 384c0 35.3 28.7 64 64 64l48 0c15.1 0 29-5.3 40-14 11 8.8 24.9 14 40 14l48 0c35.3 0 64-28.7 64-64l0-164.4 48.6 181.2c9.1 34.1 44.2 54.4 78.4 45.3l46.4-12.4c34.1-9.1 54.4-44.2 45.3-78.4L455.4 48.3C446.3 14.2 411.2-6.1 377 3.1L330.7 15.5c-24.4 6.5-41.8 26.4-46.3 49.7-3.9-.8-8-1.1-12.1-1.1l-48 0c-5.5 0-10.9 .7-16 2zm0 62c0-8.8 7.2-16 16-16l48 0c8.8 0 16 7.2 16 16l0 320c0 8.8-7.2 16-16 16l-48 0c-8.8 0-16-7.2-16-16l0-320zm-48 320c0 8.8-7.2 16-16 16l-48 0c-8.8 0-16-7.2-16-16l0-32 80 0 0 32zM389.5 49.4c8.5-2.3 17.3 2.8 19.6 11.3l8.3 30.9-77.3 20.7-8.3-30.9c-2.3-8.5 2.8-17.3 11.3-19.6l46.4-12.4zm21 325.7l-58-216.4 77.3-20.7 58 216.4-77.3 20.7zm12.4 46.4l77.3-20.7 8.3 30.9c2.3 8.5-2.8 17.3-11.3 19.6l-46.4 12.4c-8.5 2.3-17.3-2.8-19.6-11.3l-8.3-30.9z"></path></svg></span><span class="flex flex-col gap-0.5"><span class="text-[16px] font-medium text-noctis-500">Workbooks</span><span class="text-[14px] text-noctis-300">Dedicated environment for query optimization</span></span></a><div class="py-4"><a href="/postgres-query-advisor" class="flex items-center justify-center gap-1.5 rounded-md bg-noctis-500 px-3.5 py-2.5 hover:bg-noctis-400 focus-visible:bg-noctis-400"><span class="text-[16px] font-medium text-sand-100">See all features</span><svg data-prefix="far" data-icon="arrow-right" class="svg-inline--fa fa-arrow-right W_cs5G_faIcon text-[16px] text-sand-100" role="img" viewBox="0 0 512 512" aria-hidden="true"><path fill="currentColor" d="M505 273c9.4-9.4 9.4-24.6 0-33.9L337 71c-9.4-9.4-24.6-9.4-33.9 0s-9.4 24.6 0 33.9l127 127-406.1 0c-13.3 0-24 10.7-24 24s10.7 24 24 24l406.1 0-127 127c-9.4 9.4-9.4 24.6 0 33.9s24.6 9.4 33.9 0L505 273z"></path></svg></a></div></div></div></div><div class="overflow-hidden rounded-lg bg-white"><button type="button" aria-expanded="false" class="flex w-full cursor-pointer items-center justify-between border-0 p-4 text-left focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-stratos-500 bg-transparent"><span class="text-[18px] text-noctis-500">Solutions</span><svg data-prefix="far" data-icon="chevron-down" class="svg-inline--fa fa-chevron-down W_cs5G_faIcon text-[16px] text-noctis-500" role="img" viewBox="0 0 448 512" aria-hidden="true"><path fill="currentColor" d="M207.5 409c9.4 9.4 24.6 9.4 33.9 0l200-200c9.4-9.4 9.4-24.6 0-33.9s-24.6-9.4-33.9 0l-183 183-183-183c-9.4-9.4-24.6-9.4-33.9 0s-9.4 24.6 0 33.9l200 200z"></path></svg></button><div class="nav-drawer"><div class="px-4"><a href="/solutions/slow-postgres-queries" class="py-4 border-b border-noctis-100 last:border-b-0 focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-stratos-500 block"><span class="text-[18px] text-noctis-500">Fix Slow Queries</span></a><a href="/enterprise-postgres-monitoring" class="py-4 border-b border-noctis-100 last:border-b-0 focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-stratos-500 block"><span class="text-[18px] text-noctis-500">Enterprise Scale</span></a></div></div></div><a href="/pricing" class="block rounded-lg bg-white p-4 text-[18px] focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-stratos-500"><span class="text-noctis-500">Pricing</span></a><a href="/blog" class="block rounded-lg bg-white p-4 text-[18px] focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-stratos-500"><span class="font-medium text-noctis-500">Blog</span></a><div class="overflow-hidden rounded-lg bg-white"><button type="button" aria-expanded="false" class="flex w-full cursor-pointer items-center justify-between border-0 p-4 text-left focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-stratos-500 bg-transparent"><span class="text-[18px] text-noctis-500">Resources</span><svg data-prefix="far" data-icon="chevron-down" class="svg-inline--fa fa-chevron-down W_cs5G_faIcon text-[16px] text-noctis-500" role="img" viewBox="0 0 448 512" aria-hidden="true"><path fill="currentColor" d="M207.5 409c9.4 9.4 24.6 9.4 33.9 0l200-200c9.4-9.4 9.4-24.6 0-33.9s-24.6-9.4-33.9 0l-183 183-183-183c-9.4-9.4-24.6-9.4-33.9 0s-9.4 24.6 0 33.9l200 200z"></path></svg></button><div class="nav-drawer"><div class="px-4"><a href="/resources/webinars" class="py-4 border-b border-noctis-100 last:border-b-0 focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-stratos-500 block"><span class="text-[18px] text-noctis-500">Webinars</span></a><a href="/resources/ebooks" class="py-4 border-b border-noctis-100 last:border-b-0 focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-stratos-500 block"><span class="text-[18px] text-noctis-500">eBooks</span></a><a href="/resources/tools" class="py-4 border-b border-noctis-100 last:border-b-0 focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-stratos-500 block"><span class="text-[18px] text-noctis-500">Tools</span></a><a href="/customers" class="py-4 border-b border-noctis-100 last:border-b-0 focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-stratos-500 block"><span class="text-[18px] text-noctis-500">Customer Stories</span></a><a href="/blog" class="py-4 border-b border-noctis-100 last:border-b-0 focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-stratos-500 block"><span class="text-[18px] font-medium text-stratos-500">Blog</span></a><a href="/newsletter" class="py-4 border-b border-noctis-100 last:border-b-0 focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-stratos-500 block"><span class="text-[18px] text-noctis-500">Newsletter</span></a></div></div></div><div class="overflow-hidden rounded-lg bg-white"><button type="button" aria-expanded="false" class="flex w-full cursor-pointer items-center justify-between border-0 p-4 text-left focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-stratos-500 bg-transparent"><span class="text-[18px] text-noctis-500">Company</span><svg data-prefix="far" data-icon="chevron-down" class="svg-inline--fa fa-chevron-down W_cs5G_faIcon text-[16px] text-noctis-500" role="img" viewBox="0 0 448 512" aria-hidden="true">
13<path fill="currentColor" d="M207.5 409c9.4 9.4 24.6 9.4 33.9 0l200-200c9.4-9.4 9.4-24.6 0-33.9s-24.6-9.4-33.9 0l-183 183-183-183c-9.4-9.4-24.6-9.4-33.9 0s-9.4 24.6 0 33.9l200 200z"></path></svg></button><div class="nav-drawer"><div class="px-4"><a href="/about" class="py-4 border-b border-noctis-100 last:border-b-0 focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-stratos-500 block"><span class="text-[18px] text-noctis-500">About us</span></a><a href="/careers" class="py-4 border-b border-noctis-100 last:border-b-0 focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-stratos-500 block"><span class="text-[18px] text-noctis-500">Careers</span></a></div></div></div><a href="/contact" class="block rounded-lg bg-white p-4 text-[18px] focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-stratos-500"><span class="text-noctis-500">Contact</span></a></nav><div class="relative z-10 flex flex-col gap-3"><a href="https://app.pganalyze.com/users/sign_up" class="flex h-12 items-center justify-center rounded-md bg-noctis-500 hover:bg-noctis-400 focus-visible:bg-noctis-400"><span class="text-[18px] font-medium text-sand-100">Free Trial</span></a><a href="https://app.pganalyze.com/users/sign_in" class="group flex items-center justify-center gap-2 rounded-md py-2 focus-visible:bg-noctis-100"><span class="flex items-center gap-2 text-[18px] text-noctis-500 group-hover:text-stratos-500 group-focus-visible:text-stratos-500">Log in<svg data-prefix="far" data-icon="arrow-right" class="svg-inline--fa fa-arrow-right W_cs5G_faIcon text-[14px]" role="img" viewBox="0 0 512 512" aria-hidden="true"><path fill="currentColor" d="M505 273c9.4-9.4 9.4-24.6 0-33.9L337 71c-9.4-9.4-24.6-9.4-33.9 0s-9.4 24.6 0 33.9l127 127-406.1 0c-13.3 0-24 10.7-24 24s10.7 24 24 24l406.1 0-127 127c-9.4 9.4-9.4 24.6 0 33.9s24.6 9.4 33.9 0L505 273z"></path></svg></span></a></div><div aria-hidden="true" class="pointer-events-none absolute inset-x-0 bottom-0 z-0 h-64 overflow-hidden"><img src="/_astro/solutions-comparison-cloud2.CHaNQbXM.svg" alt="" class="absolute -left-12 bottom-4 w-72 aspect-[497/249] opacity-70"/><img src="/_astro/solutions-comparison-cloud1.zLAVRHrb.svg" alt="" class="absolute -right-10 bottom-16 w-56 aspect-[497/249] opacity-60"/><svg class="absolute bottom-28 left-12" width="14" height="20" viewBox="0 0 14 20" fill="none" aria-hidden="true"><path d="M7 0L7 20" stroke="var(--stratos-500)" stroke-width="0.75"></path><path d="M0 10.375H13.8704" stroke="var(--stratos-500)" stroke-width="0.75"></path><path d="M2.03326 5.47168L11.8411 15.2795" stroke="var(--stratos-500)" stroke-width="0.75"></path><path d="M2.03027 15.2798L11.8381 5.47195" stroke="var(--stratos-500)" stroke-width="0.75"></path></svg><svg class="absolute bottom-10 right-20" width="14" height="20" viewBox="0 0 14 20" fill="none" aria-hidden="true"><path d="M7 0L7 20" stroke="var(--stardust-500)" stroke-width="0.75"></path><path d="M0 10.375H13.8704" stroke="var(--stardust-500)" stroke-width="0.75"></path><path d="M2.03326 5.47168L11.8411 15.2795" stroke="var(--stardust-500)" stroke-width="0.75"></path><path d="M2.03027 15.2798L11.8381 5.47195" stroke="var(--stardust-500)" stroke-width="0.75"></path></svg><svg class="absolute bottom-36 right-10" width="14" height="20" viewBox="0 0 14 20" fill="none" aria-hidden="true"><path d="M7 0L7 20" stroke="var(--redshift-500)" stroke-width="0.75"></path><path d="M0 10.375H13.8704" stroke="var(--redshift-500)" stroke-width="0.75"></path><path d="M2.03326 5.47168L11.8411 15.2795" stroke="var(--redshift-500)" stroke-width="0.75"></path><path d="M2.03027 15.2798L11.8381 5.47195" stroke="var(--redshift-500)" stroke-width="0.75"></path></svg></div></div></div></div></div><div class="L8lE7q_headerBackground"><div class="L8lE7q_headerBackgroundGradient"></div></div><!--astro:end--></astro-island><div class="pga-container page-container"><div class="page-content has-category"><div class="page-content--inner"><div class="long-content"><h1>Find and fix slow Postgres queries on Supabase and Neon with pganalyze</h1><div class="author-avatar"><a href="https://www.linkedin.com/in/ryanbooz/" title="Written by Ryan Booz"><img src="/_astro/ryan.BTpX_TgV.jpg" class="author avatar round" alt="Ryan Booz" width="180" height="180"></a>By <strong>Ryan Booz</strong><div class="date">August 13, 2026</div><div class="blog-post-category-sidebar"><a href="/blog/category/monitoring-observability" class="blog-category-chip"><svg data-prefix="far" data-icon="tag" class="svg-inline--fa fa-tag W_cs5G_faIcon blog-category-chip-icon" role="img" viewBox="0 0 576 512" aria-hidden="true">
13<path fill="currentColor" d="M96.1 88c0-13.3 10.7-24 24-24l156.1 0c6.4 0 12.5 2.5 17 7l208 208c9.4 9.4 9.4 24.6 0 33.9L345.1 469.1c-9.4 9.4-24.6 9.4-33.9 0l-208-208c-4.5-4.5-7-10.6-7-17L96.1 88zm24-72c-39.8 0-72 32.2-72 72l0 156.1c0 19.1 7.6 37.4 21.1 50.9l208 208c28.1 28.1 73.7 28.1 101.8 0L535.1 346.9c28.1-28.1 28.1-73.7 0-101.8l-208-208C313.6 23.6 295.3 16 276.2 16L120.1 16zm56 160a32 32 0 1 0 0-64 32 32 0 1 0 0 64z"></path></svg><span>Monitoring & Observability</span></a></div></div><div><p>Postgres databases are being created faster than ever, and increasingly not by humans. Databricks reports that <a href="https://www.databricks.com/company/newsroom/press-releases/databricks-agrees-acquire-neon-help-developers-deliver-ai-systems">over 80 percent of the databases provisioned on Neon are created by AI agents rather than people</a>. On Supabase, <a href="https://techcrunch.com/2026/06/05/supabase-doubles-valuation-to-10b-in-8-months/">more than 60 percent of new databases are launched via AI tools</a>, with Claude Code being the largest contributor so far in 2026. I see this in my own development sessions: AI-assisted tools comb the schema with one-off queries, iterating until they find what they need. Building an app on Postgres has never been faster. But every app that succeeds reaches a moment where it needs more than just new features added. It needs attention on stability and performance. The AI tool that created your database in seconds didnât tune it for what your workload became.</p> 14<p>That moment is what pganalyze is built for, and today weâre excited to announce support for <a href="https://supabase.com/"><strong>Supabase</strong></a> and <a href="https://neon.com/"><strong>Neon</strong></a> as supported system types, starting with <a href="https://github.com/pganalyze/collector/blob/main/CHANGELOG.md#0720------2026-08-12">collector release v0.72.0</a>. You get the same workflow you may know from monitoring Postgres on RDS, Aurora, or self-managed servers: continuous query performance statistics collected from <code>pg_stat_statements</code>, schema statistics, Log Insights, and, on Supabase, EXPLAIN plan collection through <code>auto_explain</code>.</p> 15<div class="toc"> 16<ul> 17<li><a href="#how-monitoring-works-on-supabase-and-neon">How monitoring works on Supabase and Neon</a></li> 18<li><a href="#how-to-monitor-supabase-database-performance">How to monitor Supabase database performance</a></li> 19<li><a href="#how-to-monitor-neon-database-performance">How to monitor Neon database performance</a></li> 20<li><a href="#availability">Availability</a><ul> 21<li><a href="#try-it-now">Try it now</a></li> 22<li><a href="#get-a-demo-or-talk-to-us">Get a demo or talk to us</a></li> 23</ul> 24</li></ul> 25</div> 26<h2 id="how-monitoring-works-on-supabase-and-neon"><a data-anchor="true" href="#how-monitoring-works-on-supabase-and-neon" aria-hidden="true" tabindex="-1"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 576 512" aria-hidden="true" role="img"><path fill="currentColor" d="M419.5 96c-16.6 0-32.7 4.5-46.8 12.7-15.8-16-34.2-29.4-54.5-39.5 28.2-24 64.1-37.2 101.3-37.2 86.4 0 156.5 70 156.5 156.5 0 41.5-16.5 81.3-45.8 110.6l-71.1 71.1c-29.3 29.3-69.1 45.8-110.6 45.8-86.4 0-156.5-70-156.5-156.5 0-1.5 0-3 .1-4.5 .5-17.7 15.2-31.6 32.9-31.1s31.6 15.2 31.1 32.9c0 .9 0 1.8 0 2.6 0 51.1 41.4 92.5 92.5 92.5 24.5 0 48-9.7 65.4-27.1l71.1-71.1c17.3-17.3 27.1-40.9 27.1-65.4 0-51.1-41.4-92.5-92.5-92.5zM275.2 173.3c-1.9-.8-3.8-1.9-5.5-3.1-12.6-6.5-27-10.2-42.1-10.2-24.5 0-48 9.7-65.4 27.1L91.1 258.2c-17.3 17.3-27.1 40.9-27.1 65.4 0 51.1 41.4 92.5 92.5 92.5 16.5 0 32.6-4.4 46.7-12.6 15.8 16 34.2 29.4 54.6 39.5-28.2 23.9-64 37.2-101.3 37.2-86.4 0-156.5-70-156.5-156.5 0-41.5 16.5-81.3 45.8-110.6l71.1-71.1c29.3-29.3 69.1-45.8 110.6-45.8 86.6 0 156.5 70.6 156.5 156.9 0 1.3 0 2.6 0 3.9-.4 17.7-15.1 31.6-32.8 31.2s-31.6-15.1-31.2-32.8c0-.8 0-1.5 0-2.3 0-33.7-18-63.3-44.8-79.6z"></path></svg></a>How monitoring works on Supabase and Neon</h2> 27<p>Neither platform gives you a host to install an agent on, so the <a href="https://github.com/pganalyze/collector">pganalyze collector</a>
27 runs on your own infrastructure instead: a small VM or container with at least 1GB of RAM works well. From there it connects to your database over the network and collects query and schema statistics continuously over time.</p> 28<p>Logs work differently than on providers where the collector polls an API. Both Supabase and Neon <em>push</em> logs using OpenTelemetry: the collector exposes an OTLP HTTP endpoint (the <code>db_log_otel_server</code> setting), and the platform sends Postgres log data to it. That means the collector needs to run somewhere with a stable, publicly reachable address, and for additional security, we recommend putting a TLS-terminating reverse proxy (e.g. with AWS ALB) in front of the endpoint. Once logs arrive, they get stored in pganalyze <a href="/docs/log-insights">Log Insights</a> just like on any other supported platform.</p> 29<h2 id="how-to-monitor-supabase-database-performance"><a data-anchor="true" href="#how-to-monitor-supabase-database-performance" aria-hidden="true" tabindex="-1"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 576 512" aria-hidden="true" role="img"><path fill="currentColor" d="M419.5 96c-16.6 0-32.7 4.5-46.8 12.7-15.8-16-34.2-29.4-54.5-39.5 28.2-24 64.1-37.2 101.3-37.2 86.4 0 156.5 70 156.5 156.5 0 41.5-16.5 81.3-45.8 110.6l-71.1 71.1c-29.3 29.3-69.1 45.8-110.6 45.8-86.4 0-156.5-70-156.5-156.5 0-1.5 0-3 .1-4.5 .5-17.7 15.2-31.6 32.9-31.1s31.6 15.2 31.1 32.9c0 .9 0 1.8 0 2.6 0 51.1 41.4 92.5 92.5 92.5 24.5 0 48-9.7 65.4-27.1l71.1-71.1c17.3-17.3 27.1-40.9 27.1-65.4 0-51.1-41.4-92.5-92.5-92.5zM275.2 173.3c-1.9-.8-3.8-1.9-5.5-3.1-12.6-6.5-27-10.2-42.1-10.2-24.5 0-48 9.7-65.4 27.1L91.1 258.2c-17.3 17.3-27.1 40.9-27.1 65.4 0 51.1 41.4 92.5 92.5 92.5 16.5 0 32.6-4.4 46.7-12.6 15.8 16 34.2 29.4 54.6 39.5-28.2 23.9-64 37.2-101.3 37.2-86.4 0-156.5-70-156.5-156.5 0-41.5 16.5-81.3 45.8-110.6l71.1-71.1c29.3-29.3 69.1-45.8 110.6-45.8 86.6 0 156.5 70.6 156.5 156.9 0 1.3 0 2.6 0 3.9-.4 17.7-15.1 31.6-32.8 31.2s-31.6-15.1-31.2-32.8c0-.8 0-1.5 0-2.3 0-33.7-18-63.3-44.8-79.6z"></path></svg></a>How to monitor Supabase database performance</h2> 30<p>To monitor Supabase database performance with pganalyze, you connect the collector to your projectâs database, add a log drain for Log Insights, and enable <code>auto_explain</code> for EXPLAIN plans. Query monitoring starts with <code>pg_stat_statements</code> (if you want to know exactly what it can and canât tell you, I have a <a href="/blog/postgres-in-production-pg-stat-statements-deep-dive-part-1">
30six and soon to be seven-part deep dive</a> on it), and Supabase enables it by default on every project, so step one is usually just a verification. One detail worth knowing: Supabase installs extensions into a dedicated <code>extensions</code> schema rather than <code>public</code>, and the <a href="/docs/install/supabase/01_enable_pg_stat_statements">installation guide for Supabase</a> covers granting your monitoring user access to it.</p> 31<p>After creating the monitoring user, you install the collector on your own infrastructure and configure it with your projectâs connection details from the Supabase dashboard. For logs, you create a <a href="/docs/log-insights/setup/supabase/01_set_up_log_drain">Supabase log drain</a> that sends Postgres log data to the collectorâs OTLP endpoint.</p> 32<p>Supabase also supports <code>auto_explain</code>, which unlocks one of the most valuable parts of pganalyze: automatic collection of EXPLAIN plans for your slow queries. The <a href="/docs/explain/setup">EXPLAIN setup guide for Supabase</a> walks through checking whether <code>auto_explain</code> is active, enabling it, and reviewing the recommended settings. With plans coming in, features that build on EXPLAIN plan data, such as <a href="/postgres-explain">Automated EXPLAIN</a> insights and <a href="/docs/query-advisor/getting-started">Query Advisor</a> recommendations, work on your Supabase databases the same way they do elsewhere.</p> 33<p><img src="/_astro/query-performance-explain-plan-supabase.Dc3x5dsp.png" alt="pganalyze Query Performance page for a Supabase database, showing an EXPLAIN plan collected through auto_explain with plan insights flagging stale statistics and a significant row mis-estimate"/></p> 34<h2 id="how-to-monitor-neon-database-performance"><a data-anchor="true" href="#how-to-monitor-neon-database-performance" aria-hidden="true" tabindex="-1"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 576 512" aria-hidden="true" role="img"><path fill="currentColor" d="M419.5 96c-16.6 0-32.7 4.5-46.8 12.7-15.8-16-34.2-29.4-54.5-39.5 28.2-24 64.1-37.2 101.3-37.2 86.4 0 156.5 70 156.5 156.5 0 41.5-16.5 81.3-45.8 110.6l-71.1 71.1c-29.3 29.3-69.1 45.8-110.6 45.8-86.4 0-156.5-70-156.5-156.5 0-1.5 0-3 .1-4.5 .5-17.7 15.2-31.6 32.9-31.1s31.6 15.2 31.1 32.9c0 .9 0 1.8 0 2.6 0 51.1 41.4 92.5 92.5 92.5 24.5 0 48-9.7 65.4-27.1l71.1-71.1c17.3-17.3 27.1-40.9 27.1-65.4 0-51.1-41.4-92.5-92.5-92.5zM275.2 173.3c-1.9-.8-3.8-1.9-5.5-3.1-12.6-6.5-27-10.2-42.1-10.2-24.5 0-48 9.7-65.4 27.1L91.1 258.2c-17.3 17.3-27.1 40.9-27.1 65.4 0 51.1 41.4 92.5 92.5 92.5 16.5 0 32.6-4.4 46.7-12.6 15.8 16 34.2 29.4 54.6 39.5-28.2 23.9-64 37.2-101.3 37.2-86.4 0-156.5-70-156.5-156.5 0-41.5 16.5-81.3 45.8-110.6l71.1-71.1c29.3-29.3 69.1-45.8 110.6-45.8 86.6 0 156.5 70.6 156.5 156.9 0 1.3 0 2.6 0 3.9-.4 17.7-15.1 31.6-32.8 31.2s-31.6-15.1-31.2-32.8c0-.8 0-1.5 0-2.3 0-33.7-18-63.3-44.8-79.6z"></path></svg></a>How to monitor Neon database performance</h2> 35<p>To monitor Neon database performance with pganalyze, you point the collector at the branch you want to monitor and add Neonâs OpenTelemetry integration for logs. One Neon concept matters here: <strong>every branch in a Neon project has its own connection string, its own compute, and its own set of roles</strong>. Statistics live with the branch, so you set up monitoring per branch, typically just for your production branch.</p> 36<p>Setup follows three steps, walked through in the <a href="/docs/install/neon/01_enable_pg_stat_statements">installation guide for Neon</a>:</p> 37<ol> 38<li>Enable the <code>pg_stat_statements</code> extension on the branch you want to monitor</li> 39<li>Create a dedicated monitoring user (we recommend not reusing your default Neon role)</li> 40<li>Install the collector on your own VM or container and point it at the branchâs connection string</li> 41</ol> 42<p>To collect logs, Neon offers an <a href="/docs/log-insights/setup/neon/01_set_up_opentelemetry_logs">OpenTelemetry integration</a>, currently in Beta on Neonâs side and available on the Neon Scale plan, that pushes Postgres logs to the collectorâs OTLP endpoint. You configure it directly from the Integrations page in the Neon Console. Note that Neon currently does not support auto_explain.</p> 43<h2 id="availability"><a data-anchor="true" href="#availability" aria-hidden="true" tabindex="-1"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 576 512" aria-hidden="true" role="img">
43<path fill="currentColor" d="M419.5 96c-16.6 0-32.7 4.5-46.8 12.7-15.8-16-34.2-29.4-54.5-39.5 28.2-24 64.1-37.2 101.3-37.2 86.4 0 156.5 70 156.5 156.5 0 41.5-16.5 81.3-45.8 110.6l-71.1 71.1c-29.3 29.3-69.1 45.8-110.6 45.8-86.4 0-156.5-70-156.5-156.5 0-1.5 0-3 .1-4.5 .5-17.7 15.2-31.6 32.9-31.1s31.6 15.2 31.1 32.9c0 .9 0 1.8 0 2.6 0 51.1 41.4 92.5 92.5 92.5 24.5 0 48-9.7 65.4-27.1l71.1-71.1c17.3-17.3 27.1-40.9 27.1-65.4 0-51.1-41.4-92.5-92.5-92.5zM275.2 173.3c-1.9-.8-3.8-1.9-5.5-3.1-12.6-6.5-27-10.2-42.1-10.2-24.5 0-48 9.7-65.4 27.1L91.1 258.2c-17.3 17.3-27.1 40.9-27.1 65.4 0 51.1 41.4 92.5 92.5 92.5 16.5 0 32.6-4.4 46.7-12.6 15.8 16 34.2 29.4 54.6 39.5-28.2 23.9-64 37.2-101.3 37.2-86.4 0-156.5-70-156.5-156.5 0-41.5 16.5-81.3 45.8-110.6l71.1-71.1c29.3-29.3 69.1-45.8 110.6-45.8 86.6 0 156.5 70.6 156.5 156.9 0 1.3 0 2.6 0 3.9-.4 17.7-15.1 31.6-32.8 31.2s-31.6-15.1-31.2-32.8c0-.8 0-1.5 0-2.3 0-33.7-18-63.3-44.8-79.6z"></path></svg></a>Availability</h2> 44<p>Supabase and Neon support is available now for all pganalyze customers using collector v0.72.0 or newer. For self-managed installations, both system types are included in <a href="/docs/enterprise/releases">Enterprise Server v2026.08.0</a>.</p> 45<p>If youâre running Postgres on Supabase or Neon, I hope this gives you the visibility thatâs been missing. Connect a project and see what your first week of data tells you.</p> 46<h3 id="try-it-now"><a data-anchor="true" href="#try-it-now" aria-hidden="true" tabindex="-1"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 576 512" aria-hidden="true" role="img"><path fill="currentColor" d="M419.5 96c-16.6 0-32.7 4.5-46.8 12.7-15.8-16-34.2-29.4-54.5-39.5 28.2-24 64.1-37.2 101.3-37.2 86.4 0 156.5 70 156.5 156.5 0 41.5-16.5 81.3-45.8 110.6l-71.1 71.1c-29.3 29.3-69.1 45.8-110.6 45.8-86.4 0-156.5-70-156.5-156.5 0-1.5 0-3 .1-4.5 .5-17.7 15.2-31.6 32.9-31.1s31.6 15.2 31.1 32.9c0 .9 0 1.8 0 2.6 0 51.1 41.4 92.5 92.5 92.5 24.5 0 48-9.7 65.4-27.1l71.1-71.1c17.3-17.3 27.1-40.9 27.1-65.4 0-51.1-41.4-92.5-92.5-92.5zM275.2 173.3c-1.9-.8-3.8-1.9-5.5-3.1-12.6-6.5-27-10.2-42.1-10.2-24.5 0-48 9.7-65.4 27.1L91.1 258.2c-17.3 17.3-27.1 40.9-27.1 65.4 0 51.1 41.4 92.5 92.5 92.5 16.5 0 32.6-4.4 46.7-12.6 15.8 16 34.2 29.4 54.6 39.5-28.2 23.9-64 37.2-101.3 37.2-86.4 0-156.5-70-156.5-156.5 0-41.5 16.5-81.3 45.8-110.6l71.1-71.1c29.3-29.3 69.1-45.8 110.6-45.8 86.6 0 156.5 70.6 156.5 156.9 0 1.3 0 2.6 0 3.9-.4 17.7-15.1 31.6-32.8 31.2s-31.6-15.1-31.2-32.8c0-.8 0-1.5 0-2.3 0-33.7-18-63.3-44.8-79.6z"></path></svg></a>Try it now</h3> 47<ul> 48<li><strong><a href="https://app.pganalyze.com">Sign up or log in to pganalyze</a></strong> and follow the in-app setup instructions for Supabase or Neon.</li> 49<li><strong><a href="/docs/install/supabase/01_enable_pg_stat_statements">Supabase installation guide</a></strong> for the full setup, including the log drain and <code>auto_explain</code>.</li> 50<li><strong><a href="/docs/install/neon/01_enable_pg_stat_statements">Neon installation guide</a></strong> for the full setup, including the OpenTelemetry log integration.</li> 51</ul> 52<h3 id="get-a-demo-or-talk-to-us"><a data-anchor="true" href="#get-a-demo-or-talk-to-us" aria-hidden="true" tabindex="-1"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 576 512" aria-hidden="true" role="img"><path fill="currentColor" d="M419.5 96c-16.6 0-32.7 4.5-46.8 12.7-15.8-16-34.2-29.4-54.5-39.5 28.2-24 64.1-37.2 101.3-37.2 86.4 0 156.5 70 156.5 156.5 0 41.5-16.5 81.3-45.8 110.6l-71.1 71.1c-29.3 29.3-69.1 45.8-110.6 45.8-86.4 0-156.5-70-156.5-156.5 0-1.5 0-3 .1-4.5 .5-17.7 15.2-31.6 32.9-31.1s31.6 15.2 31.1 32.9c0 .9 0 1.8 0 2.6 0 51.1 41.4 92.5 92.5 92.5 24.5 0 48-9.7 65.4-27.1l71.1-71.1c17.3-17.3 27.1-40.9 27.1-65.4 0-51.1-41.4-92.5-92.5-92.5zM275.2 173.3c-1.9-.8-3.8-1.9-5.5-3.1-12.6-6.5-27-10.2-42.1-10.2-24.5 0-48 9.7-65.4 27.1L91.1 258.2c-17.3 17.3-27.1 40.9-27.1 65.4 0 51.1 41.4 92.5 92.5 92.5 16.5 0 32.6-4.4 46.7-12.6 15.8 16 34.2 29.4 54.6 39.5-28.2 23.9-64 37.2-101.3 37.2-86.4 0-156.5-70-156.5-156.5 0-41.5 16.5-81.3 45.8-110.6l71.1-71.1c29.3-29.3 69.1-45.8 110.6-45.8 86.6 0 156.5 70.6 156.5 156.9 0 1.3 0 2.6 0 3.9-.4 17.7-15.1 31.6-32.8 31.2s-31.6-15.1-31.2-32.8c0-.8 0-1.5 0-2.3 0-33.7-18-63.3-44.8-79.6z"></path></svg></a>Get a demo or talk to us</h3> 53<ul> 54<li><strong><a href="/schedule-demo">Schedule a demo</a></strong> for a customized 1:1 walkthrough with our team.</li> 55<li><strong><a href="/contact">Let us know what you think</a></strong> if youâre running Postgres on Supabase or Neon and thereâs something else youâd like pganalyze to supp
55ort.</li> 56</ul></div><hr><div class="blog-newsletter-form"><h3>Enjoy blog posts like this?</h3><div class="blog-cta-text">Get them once a month to your inbox</div>
56<script>(()=>{var a=(s,i,o)=>{let r=async()=>{await(await s())()},t=typeof i.value=="object"?i.value:void 0,c={rootMargin:t==null?void 0:t.rootMargin},n=new IntersectionObserver(e=>{for(let l of e)if(l.isIntersecting){n.disconnect(),r();break}},c);for(let e of o.children)n.observe(e)};(self.Astro||(self.Astro={})).visible=a;window.dispatchEvent(new Event("astro:visible"));})();</script>
56<astro-island uid="Z1X2X4g" prefix="r2" component-url="/_astro/index.ABATkjNb.js" component-export="default" renderer-url="/_astro/client.Dqz2Vqct.js" props="{"formId":[0,"b549a317-a3bd-4951-8177-71851f4f6708"]}" ssr client="visible" opts="{"name":"HubspotForm","value":true}" await-children><div id="hubspot-form-b549a317-a3bd-4951-8177-71851f4f6708" class="MLd_Xq_form"></div><!--astro:end--></astro-island></div><hr><ul style="display: flex; flex-wrap: wrap; justify-content: space-between; list-style: none; padding: 0;"><li style="margin-bottom: 25px;"><a href="/blog/postgres-in-production-pg-stat-statements-deep-dive-part-6" rel="prev">â Postgres in Production Special Series: Diagnosing High Cardinality Workloads in pg_stat_statements (Part 6)</a></li><li><a href="/blog/postgres-in-production-pg-stat-statements-deep-dive-part-7" rel="next">Postgres in Production Special Series: How to Query pg_stat_statements to Find Slow and Expensive Postgres Queries (Part 7) â</a></li></ul></div></div></div></div><footer class="i3PfeG_footer"><div class="i3PfeG_footerMain pga-container"><div class="row"><div class="span8"><img width="180" src="/_astro/pga_rect_light.C_LAdX-o.svg" alt="Logo" class="i3PfeG_logo"><ul><li><a href="/contact">Contact</a></li><li><a href="/pricing">Plans & Pricing</a></li><li><a href="/resources">Resources</a></li><li><a href="/enterprise-postgres-monitoring">Enterprise</a></li><li><a href="/docs">Documentation</a></li><li><a href="/customers">Customer Stories</a></li><li><a href="/careers">Careers</a></li><li><a href="/index-advisor">Index Advisor</a></li><li><a href="/security">Security</a></li><li><a href="https://status.pganalyze.com">Status</a></li><li><a href="/format">Postgres Query Formatter</a></li><li><a href="/comparison">Compare pganalyze</a></li><li><a href="/terms">Terms of Service</a></li><li><a href="/privacy">Privacy Policy</a></li><li><a href="/newsletter">Newsletter</a></li><li><a href="/soc2">SOC 2 Type 2</a></li><li><a href="/do-not-sell-my-personal-information">Do Not Sell My Personal Information</a></li></ul></div><div class="span4"><h3>Get in touch</h3>Use the <a style="text-decoration: underline" href="/contact">contact us form</a> or email sales:<br><svg data-prefix="fas" data-icon="envelope" class="svg-inline--fa fa-envelope W_cs5G_faIcon" role="img" viewBox="0 0 512 512" aria-hidden="true"><path fill="currentColor" d="M48 64c-26.5 0-48 21.5-48 48 0 15.1 7.1 29.3 19.2 38.4l208 156c17.1 12.8 40.5 12.8 57.6 0l208-156c12.1-9.1 19.2-23.3 19.2-38.4 0-26.5-21.5-48-48-48L48 64zM0 196L0 384c0 35.3 28.7 64 64 64l384 0c35.3 0 64-28.7 64-64l0-188-198.4 148.8c-34.1 25.6-81.1 25.6-115.2 0L0 196z"></path></svg> <a href="mailto:[email protected]">[email protected]</a><br><br><h3>SOC 2 certification</h3> pganalyze is SOC 2 Type 2 certified<br><br><a href="https://www.aicpa.org/soc4so"><img src="/_astro/21972-312_SOC_NonCPA.Ds7liiik_tTX3V.webp" alt="pganalyze is SOC 2 Type 2 certified" loading="lazy" decoding="async" width="180" height="180" class="i3PfeG_soc2logo"></a></div></div></div><div class="i3PfeG_footerExtra"><div class="pga-container">© 2026 Duboce Labs, Inc.</div></div></footer></div></body></html>
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.