1<!DOCTYPE html><html lang="en" class="inter_d4b5abb6-module__B5KBgq__variable" data-scroll-behavior="smooth"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" href="/_next/static/media/inter_latin_400_normal-s.p.0vig85~_2mxl3.woff2" as="font" crossorigin="" type="font/woff2"/><link rel="preload" href="/_next/static/media/inter_latin_500_normal-s.p.0frew35n-hgkk.woff2" as="font" crossorigin="" type="font/woff2"/><link rel="preload" href="/_next/static/media/inter_latin_600_normal-s.p.0rm8x4lrq0d8z.woff2" as="font" crossorigin="" type="font/woff2"/><link rel="preload" href="/_next/static/media/inter_latin_700_normal-s.p.17~mssnzv.d-8.woff2" as="font" crossorigin="" type="font/woff2"/><link rel="preload" as="image" href="/logo-lockup-notagline.svg"/><link rel="stylesheet" href="/_next/static/chunks/0tnthr7sm3wp9.css" data-precedence="next"/><link rel="preload" as="script" fetchPriority="low" href="/_next/static/chunks/0.3xc-w3pom1m.js"/>
1<script src="/_next/static/chunks/0-g9v8lu426rl.js" async=""></script>
1<script src="/_next/static/chunks/0z-tpl9x-9dsb.js" async=""></script>
1<script src="/_next/static/chunks/0xiyqu73qsaaf.js" async=""></script>
1<script src="/_next/static/chunks/turbopack-0kd.0m0kz2coh.js" async=""></script>
1<script src="/_next/static/chunks/11q-3mtsn6em~.js" async=""></script>
1<script src="/_next/static/chunks/0enf2~-en9~u8.js" async=""></script>
1<script src="/_next/static/chunks/0kt8zvevh9hby.js" async=""></script>
1<script src="/_next/static/chunks/0rjpt-vo~urla.js" async=""></script>
1<script src="/_next/static/chunks/0t8cdexyqfjyl.js" async=""></script>
1<meta name="next-size-adjust" content=""/><title>Privacy Policy · AppAudit</title><meta name="description" content="How AppAudit handles your data. Your Bubble app never leaves your browser â local-first audit with no backend and no analytics."/><meta name="application-name" content="AppAudit"/><meta name="robots" content="index, follow"/><link rel="canonical" href="https://getappaudit.com/privacy"/><meta property="og:title" content="AppAudit â Find the patterns inflating your Bubble bill"/><meta property="og:description" content="A local-first Chrome extension that scans your Bubble app and surfaces the patterns inflating your Workload Unit bill. Runs entirely in your browser â no AI, no backend, your app never leaves the page."/><meta property="og:url" content="https://getappaudit.com"/><meta property="og:site_name" content="AppAudit"/><meta property="og:image" content="https://getappaudit.com/og-image.png"/><meta property="og:image:width" content="1200"/><meta property="og:image:height" content="630"/><meta property="og:image:alt" content="AppAudit"/><meta property="og:type" content="website"/><meta name="twitter:card" content="summary_large_image"/><meta name="twitter:title" content="AppAudit â Find the patterns inflating your Bubble bill"/><meta name="twitter:description" content="A local-first Chrome extension that scans your Bubble app and surfaces the patterns inflating your Workload Unit bill. Runs entirely in your browser â no AI, no backend, your app never leaves the page."/><meta name="twitter:image" content="https://getappaudit.com/og-image.png"/><link rel="icon" href="/favicon.ico" sizes="32x32"/><link rel="icon" href="/icons/icon-32.png" type="image/png" sizes="32x32"/><link rel="icon" href="/icons/icon-128.png" type="image/png" sizes="128x128"/><link rel="apple-touch-icon" href="/icons/icon-256.png"/>
1<script src="/_next/static/chunks/03~yq9q893hmn.js" noModule=""></script>
1</head><body><div hidden=""><!--$--><!--/$--></div>
1<script type="application/ld+json">{"@context":"https://schema.org","@type":"SoftwareApplication","name":"AppAudit","description":"A local-first Chrome extension that scans your Bubble app and surfaces the patterns inflating your Workload Unit bill. Runs entirely in your browser â no AI, no backend, your app never leaves the page.","url":"https://getappaudit.com","applicationCategory":"DeveloperApplication","operatingSystem":"Chrome","offers":[{"@type":"Offer","name":"Solo","price":"19","priceCurrency":"USD","priceSpecification":{"@type":"UnitPriceSpecification","price":"19","priceCurrency":"USD","referenceQuantity":{"@type":"QuantitativeValue","value":1,"unitCode":"MON"}}},{"@type":"Offer","name":"Agency","price":"49","priceCurrency":"USD","priceSpecification":{"@type":"UnitPriceSpecification","price":"49","priceCurrency":"USD","referenceQuantity":{"@type":"QuantitativeValue","value":1,"unitCode":"MON"}}}]}</script>
1<a href="#main-content" class="sr-only focus:not-sr-only focus:fixed focus:left-4 focus:top-4 focus:z-50 focus:rounded-[var(--radius-btn)] focus:bg-[var(--color-indigo)] focus:px-4 focus:py-2 focus:text-sm focus:font-medium focus:text-white focus:outline-none focus:ring-2 focus:ring-[var(--color-indigo)] focus:ring-offset-2">Skip to content</a><header class="sticky top-0 z-40 w-full border-b transition-[background-color,backdrop-filter,box-shadow,border-color] duration-200 bg-transparent border-black/[0.08]"><div class="mx-auto flex max-w-6xl items-center justify-between px-4 py-3 md:px-6"><a aria-label="AppAudit home" class="rounded-[var(--radius-btn)] focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[var(--color-indigo)] focus-visible:ring-offset-2" href="/"><img alt="AppAudit" draggable="false" width="133" height="32" decoding="async" data-nimg="1" class="w-auto select-none h-8" style="color:transparent" src="/logo-lockup-notagline.svg"/></a><nav aria-label="Primary" class="hidden items-center gap-6 md:flex"><a class="text-sm font-medium text-[var(--color-slate-500)] transition-colors hover:text-[var(--color-slate-900)] focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[var(--color-indigo)] focus-visible:ring-offset-2 rounded-sm" href="/how-it-works">How it works</a><a class="text-sm font-medium text-[var(--color-slate-500)] transition-colors hover:text-[var(--color-slate-900)] focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[var(--color-indigo)] focus-visible:ring-offset-2 rounded-sm" href="/pricing">Pricing</a><a href="https://chromewebstore.google.com/detail/appaudit-%E2%80%94-for-bubble/ehakfpjcmkifiefpcikhcdlieampelll" target="_blank" rel="noopener noreferrer" class="inline-flex items-center justify-center gap-2 font-medium rounded-[var(--radius-cta)] transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[var(--color-indigo)] focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 bg-[var(--color-indigo)] text-white hover:bg-[var(--color-indigo-hover)] h-11 px-5 text-sm"><img alt="" aria-hidden="true" loading="lazy" width="18" height="18" decoding="async" data-nimg="1" class="mr-1" style="color:transparent" src="/chrome-logo.svg"/>Install for Chrome</a></nav><button type="button" aria-label="Open menu" aria-expanded="false" aria-controls="mobile-nav" class="inline-flex h-10 w-10 items-center justify-center rounded-[var(--radius-btn)] text-[var(--color-slate-900)] hover:bg-slate-100 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[var(--color-indigo)] focus-visible:ring-offset-2 md:hidden"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-menu h-5 w-5"><line x1="4" x2="20" y1="12" y2="12"></line><line x1="4" x2="20" y1="6" y2="6"></line><line x1="4" x2="20" y1="18" y2="18"></line></svg></button></div><div id="mobile-nav" class="md:hidden border-t border-black/[0.08] bg-white hidden"><nav aria-label="Primary mobile" class="mx-auto flex max-w-6xl flex-col gap-1 px-4 py-3"><a class="rounded-[var(--radius-btn)] px-2 py-2 text-base font-medium text-[var(--color-slate-900)] hover:bg-slate-100 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[var(--color-indigo)] focus-visible:ring-offset-2" href="/how-it-works">How it works</a><a class="rounded-[var(--radius-btn)] px-2 py-2 text-base font-medium text-[var(--color-slate-900)] hover:bg-slate-100 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[var(--color-indigo)] focus-visible:ring-offset-2" href="/pricing">Pricing</a><a href="https://chromewebstore.google.com/detail/appaudit-%E2%80%94-for-bubble/ehakfpjcmkifiefpcikhcdlieampelll" target="_blank" rel="noopener noreferrer" class="inline-flex items-center justify-center gap-2 font-medium rounded-[var(--radius-cta)] transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[var(--color-indigo)] focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 bg-[var(--color-indigo)] text-white hover:bg-[var(--color-indigo-hover)] h-11 px-5 text-sm mt-2 w-full"><img alt="" aria-hidden="true" loading="lazy" width="18" height="18" decoding="async" data-nimg="1" class="mr-1" style="color:transparent" src="/chrome-logo.svg"/>Install for Chrome</a></nav></div></header><main id="main-content"><article class="mx-auto max-w-6xl px-4 py-12 md:px-6 md:py-16"><header class="mb-8"><h1 class="text-3xl font-semibold tracking-tight text-[var(--color-slate-900)] md:text-4xl">Privacy Policy</h1><p class="mt-2 text-sm text-[var(--color-slate-500)]">Last updated <!-- -->June 13, 2026</p></header><details class="mb-6 rounded-[var(--radius-cta)] ring-1 ring-black/[0.08] open:bg-slate-50 lg:hidden"><summary class="cursor-pointer px-4 py-3 text-sm font-medium text-[var(--color-slate-900)]">Jump to section</summary><nav aria-label="Table of contents" class="border-t border-black/[0.08] px-4 py-3"><ol class="space-y-2 text-sm"><li><a href="#p1" class="text-[var(--color-slate-500)] hover:text-[var(--color-slate-900)]">1. Your app never leaves your browser</a></li><li><a href="#p2" class="text-[var(--color-slate-500)] hover:text-[var(--color-slate-900)]">2. Information we receive directly</a></li><li><a href="#p3" class="text-[var(--color-slate-500)] hover:text-[var(--color-slate-900)]">3. What the browser extension does on your machine</a></li><li><a href="#p4" class="text-[var(--color-slate-500)] hover:text-[var(--color-slate-900)]">4. How we use the information we receive</a></li><li><a href="#p5" class="text-[var(--color-slate-500)] hover:text-[var(--color-slate-900)]">5. Third-party processors</a></li><li><a href="#p6" class="text-[var(--color-slate-500)] hover:text-[var(--color-slate-900)]">6. Data retention</a></li><li><a href="#p7" class="text-[var(--color-slate-500)] hover:text-[var(--color-slate-900)]">7. Your rights</a></li><li><a href="#p8" class="text-[var(--color-slate-500)] hover:text-[var(--color-slate-900)]">8. Security</a></li><li><a href="#p9" class="text-[var(--color-slate-500)] hover:text-[var(--color-slate-900)]">9. Children</a></li><li><a href="#p10" class="text-[var(--color-slate-500)] hover:text-[var(--color-slate-900)]">10. International users</a></li><li><a href="#p11" class="text-[var(--color-slate-500)] hover:text-[var(--color-slate-900)]">11. Changes to this policy</a></li><li><a href="#p12" class="text-[var(--color-slate-500)] hover:text-[var(--color-slate-900)]">12. Contact</a></li></ol></nav></details><div class="lg:grid lg:grid-cols-[16rem_1fr] lg:gap-12"><aside class="hidden lg:block"><nav aria-label="Table of contents" class="sticky top-20 max-h-[calc(100vh-6rem)] overflow-y-auto pr-2"><h2 class="mb-3 text-xs font-semibold uppercase tracking-wide text-[var(--color-slate-400)]">On this page</h2><ol class="space-y-2 text-sm"><li><a href="#p1" class="block text-[var(--color-slate-500)] transition-colors hover:text-[var(--color-slate-900)]">1. Your app never leaves your browser</a></li><li><a href="#p2" class="block text-[var(--color-slate-500)] transition-colors hover:text-[var(--color-slate-900)]">2. Information we receive directly</a></li><li><a href="#p3" class="block text-[var(--color-slate-500)] transition-colors hover:text-[var(--color-slate-900)]">3. What the browser extension does on your machine</a></li><li><a href="#p4" class="block text-[var(--color-slate-500)] transition-colors hover:text-[var(--color-slate-900)]">4. How we use the information we receive</a></li><li><a href="#p5" class="block text-[var(--color-slate-500)] transition-colors hover:text-[var(--color-slate-900)]">5. Third-party processors</a></li><li><a href="#p6" class="block text-[var(--color-slate-500)] transition-colors hover:text-[var(--color-slate-900)]">6. Data retention</a></li><li><a href="#p7" class="block text-[var(--color-slate-500)] transition-colors hover:text-[var(--color-slate-900)]">7. Your rights</a></li><li><a href="#p8" class="block text-[var(--color-slate-500)] transition-colors hover:text-[var(--color-slate-900)]">8. Security</a></li><li><a href="#p9" class="block text-[var(--color-slate-500)] transition-colors hover:text-[var(--color-slate-900)]">9. Children</a></li><li><a href="#p10" class="block text-[var(--color-slate-500)] transition-colors hover:text-[var(--color-slate-900)]">10. International users</a></li><li><a href="#p11" class="block text-[var(--color-slate-500)] transition-colors hover:text-[var(--color-slate-900)]">11. Changes to this policy</a></li><li><a href="#p12" class="block text-[var(--color-slate-500)] transition-colors hover:text-[var(--color-slate-900)]">12. Contact</a></li></ol></nav></aside><div class="prose-legal max-w-3xl text-[var(--color-slate-500)]"><p>This Privacy Policy explains how AppAudit ("we," "us," or "our") handles information when you use the AppAudit Chrome extension, the https://getappaudit.com website, and any related services (collectively, the "Service").</p><p>The short version: <strong>your Bubble app never leaves your browser.</strong> The audit runs locally. We do not receive your application data.</p><p>You can contact us at <a href="/cdn-cgi/l/email-protection#bdcec8cdcdd2cfc9fddad8c9dccdcddcc8d9d4c993ded2d0"><span class="__cf_email__" data-cfemail="8efdfbfefee1fcfacee9ebfaeffefeeffbeae7faa0ede1e3">[email protected]</span></a>.</p><p>AppAudit is an independent tool and is not affiliated with, endorsed by, or sponsored by Bubble Group, Inc.</p><section><h2 id="p1">1. Your app never leaves your browser</h2><p>AppAudit is local-first by design. When you run an audit, the extension reads your Bubble application'
1s in-memory structure inside your browser, redacts known secret patterns locally, and runs a deterministic rules engine in a Web Worker.</p><p>We do not receive your application data. There is no backend that processes it. There is no AI provider in the loop. There is no telemetry pipeline that ships fragments of it elsewhere. The audit you see is computed on your machine.</p></section><section><h2 id="p2">2. Information we receive directly</h2><p>We receive only the information you choose to give us directly to operate the billing relationship and respond to you:</p><ul><li><strong>Subscription email.</strong> When you subscribe through our payment processor, the processor shares the email address associated with your subscription so we can deliver your license key and subscription receipts.</li><li><strong>Payment information.</strong> Payment is handled by our payment processor, which acts as merchant of record. We do not receive or store your card details. We receive only the information the processor passes to us to confirm the subscription (such as transaction reference, amount, and email).</li><li><strong>Support correspondence.</strong> If you email us, we retain your message and any attachments to respond to you and maintain a record of the request.</li></ul></section><section><h2 id="p3">3. What the browser extension does on your machine</h2><p>When you click âAudit my appâ inside your Bubble editor:</p><ul><li>The extension reads your appâs in-memory structure from the page.</li><li>The extension redacts known secret patterns before any preview renders. Redacted patterns include API keys, JSON Web Tokens, HTTP bearer tokens, cloud access keys, personal access tokens for code-hosting platforms, chat-platform tokens, and generic high-entropy strings.</li><li>The extension runs a deterministic rules engine over the sanitized structure in a Web Worker, then renders findings inside the extension UI.</li><li>The extension validates your license key against our license server.</li></ul><p>The license-key check is the only network call the extension makes during an audit. The payload contains only the license key and basic activation metadata (such as the installation identifier the extension uses to enforce device limits). Your Bubble application data is never part of that request.</p></section><section><h2 id="p4">4. How we use the information we receive</h2><p>We use the information we receive to:</p><ul><li>Activate, validate, and renew your subscription.</li><li>Send transactional emails (license delivery, subscription receipts).</li><li>Respond to support requests.</li><li>Comply with applicable legal obligations.</li></ul><p>We do not sell personal information. We do not display advertising in the Service. We do not use audit content to train machine-learning models â we do not receive audit content at all.</p></section><section><h2 id="p5">5. Third-party processors</h2><p>We rely on a small number of third-party providers to operate the Service. Each processes only the information needed for its function:</p><ul><li><strong>Payment processor (merchant of record).</strong> Handles subscription checkout, billing, and applicable tax collection. Receives the information you provide at checkout.</li><li><strong>License server.</strong> Validates license keys for the extension. Receives the license key and minimal activation metadata.</li><li><strong>Transactional email service.</strong> Sends license delivery and receipts. Receives the email address and message content.</li><li><strong>Static-site hosting provider.</strong> <!-- -->Serves https://getappaudit.com. Receives standard server-level request information that any web host receives.</li><li><strong>Form submission service.</strong> <!-- -->If you submit the optional feature-updates email form on https://getappaudit.com, your email is delivered to us through a third-party form service. Receives only the email address you submit.</li></ul><p>The current list of processors is available on request to <a href="/cdn-cgi/l/email-protection#bdcec8cdcdd2cfc9fddad8c9dccdcddcc8d9d4c993ded2d0"><span class="__cf_email__" data-cfemail="1665636666796462567173627766667763727f623875797b">[email protected]</span></a>.</p></section><section><h2 id="p6">6. Data retention</h2><p>We retain only the information needed to operate the Service and meet our legal obligations:</p><ul><li>Subscription and license records are retained for as long as your subscription is active and for a period afterward to satisfy billing, accounting, and tax requirements.</li><li>Support correspondence is retained for as long as needed to address the issue and a reasonable period afterward.</li><li>Audit content is not retained because we do not receive it.</li></ul><p>You can ask us to delete information we hold about you, subject to legal retention obligations, by emailing <a href="/cdn-cgi/l/email-protection#4e3d3b3e3e213c3a0e292b3a2f3e3e2f3b2a273a602d2123"><span class="__cf_email__" data-cfemail="7f0c0a0f0f100d0b3f181a0b1e0f0f1e0a1b160b511c1012">[email protected]</span></a>.</p></section><section><h2 id="p7">7. Your rights</h2><p>Depending on where you live, you may have rights to access, correct, delete, port, or object to certain uses of your personal data, and to withdraw consent. To exercise any of these rights, email <a href="/cdn-cgi/l/email-protection#7704020707180503371012031607071602131e035914181a"><span class="__cf_email__" data-cfemail="5b282e2b2b34292f1b3c3e2f3a2b2b3a2e3f322f75383436">[email protected]</span></a>. We will respond within a reasonable time consistent with applicable law.</p><p>You may also have a right to complain to your local data-protection authority.</p></section><section><h2 id="p8">8. Security</h2><p>We implement reasonable technical and organizational measures to protect data:</p><ul><li>Data in transit between the extension and the license server is encrypted in transit.</li><li>Secret patterns are redacted in your browser by the extension before any preview renders, and your application data is not transmitted to us at any point.</li><li>Access to processor systems is restricted to authorized personnel and protected with industry-standard controls.</li></ul><p>No system is perfectly secure. If we become aware of a security incident affecting your information, we will notify you in accordance with applicable law.</p></section><section><h2 id="p9">9. Children</h2><p>The Service is not directed to children. We do not knowingly collect personal information from children. If you believe a child has provided us with personal information, please contact <a href="/cdn-cgi/l/email-protection#f2818782829d8086b29597869382829387969b86dc919d9f"><span class="__cf_email__" data-cfemail="1b686e6b6b74696f5b7c7e6f7a6b6b7a6e7f726f35787476">[email protected]</span></a>.</p></section><section><h2 id="p10">10. International users</h2><p>AppAudit is offered globally. Information you provide may be processed in the country where our processors operate. Where required by law, we rely on appropriate safeguards for cross-border transfers.</p></section><section><h2 id="p11">11. Changes to this policy</h2><p>We may update this Privacy Policy from time to time. We will post the updated policy on https://getappaudit.com and update the "last updated" date. Continued use of the Service after changes take effect constitutes acceptance.</p></section><section><h2 id="p12">12. Contact</h2><p>For privacy questions, requests, or complaints:</p><p><strong>Email:</strong> <a href="/cdn-cgi/l/email-protection#5b282e2b2b34292f1b3c3e2f3a2b2b3a2e3f322f75383436"><span class="__cf_email__" data-cfemail="a0d3d5d0d0cfd2d4e0c7c5d4c1d0d0c1d5c4c9d48ec3cfcd">[email protected]</span></a></p></section><hr class="my-8 border-black/[0.08]"/><p class="text-xs italic text-[var(--color-slate-400)]">AppAudit is an independent tool and is not affiliated with, endorsed by, or sponsored by Bubble Group, Inc.</p></div></div></article><!--$--><!--/$--></main><footer class="mt-16 border-t border-slate-200"><div class="mx-auto max-w-6xl px-4 py-8 md:px-6"><div class="grid gap-6 md:grid-cols-[1fr_auto_auto] md:gap-12"><div><a aria-label="AppAudit home" class="inline-block" href="/"><img alt="AppAudit" draggable="false" loading="lazy" width="133" height="32" decoding="async" data-nimg="1" class="w-auto select-none h-8" style="color:transparent" src="/logo-lockup-notagline.svg"/></a><p class="mt-3 max-w-xs text-sm text-[var(--color-slate-500)]">Made with <span aria-hidden="true">â¤ï¸</span><span class="sr-only">love</span> for the Bubble.io community.</p></div><nav aria-label="Product" class="flex flex-col gap-2"><h2 class="text-sm font-semibold text-[var(--color-slate-900)]">Product</h2><a class="inline-flex text-sm text-[var(--color-slate-500)] transition-colors hover:text-[var(--color-slate-900)] focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[var(--color-indigo)] focus-visible:ring-offset-2 rounded-sm" href="/">Home</a><a class="inline-flex text-sm text-[var(--color-slate-500)] transition-colors hover:text-[var(--color-slate-900)] focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[var(--color-indigo)] focus-visible:ring-offset-2 rounded-sm" href="/how-it-works">How it works</a><a class="inline-flex text-sm text-[var(--color-slate-500)] transition-colors hover:text-[var(--color-slate-900)] focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[var(--color-indigo)] focus-visible:ring-offset-2 rounded-sm" href="/pricing">Pricing</a><a href="https://chromewebstore.google.com/detail/appaudit-%E2%80%94-for-bubble/ehakfpjcmkifiefpcikhcdlieampelll" target="_blank" rel="noopener noreferrer" class="inline-flex text-sm text-[var(--color-slate-500)] transition-colors hover:text-[var(--color-slate-900)] focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[var(--color-indigo)] focus-visible:ring-offset-2 rounded-sm">Install Chrome extension</a></nav><nav aria-label="Legal" class="flex flex-col gap-2"><h2 class="text-sm font-semibold text-[var(--color-slate-900)]">Legal</h2><a class="inline-flex text-sm text-[var(--color-slate-500)] transition-colors hover:text-[var(--color-slate-900)] focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[var(--color-indigo)] focus-visible:ring-offset-2 rounded-sm" href="/privacy">Privacy</a><a class="inline-flex text-sm text-[var(--color-slate-500)] transition-colors hover:text-[var(--color-slate-900)] focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[var(--color-indigo)] focus-visible:ring-offset-2 rounded-sm" href="/terms">Terms</a><a href="/cdn-cgi/l/email-protection#11626461617e63655176746570616170647578653f727e7c" class="inline-flex text-sm text-[var(--color-slate-500)] transition-colors hover:text-[var(--color-slate-900)] focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[var(--color-indigo)] focus-visible:ring-offset-2 rounded-sm">Contact</a></nav></div><div data-orientation="horizontal" role="none" class="shrink-0 bg-black/[0.08] h-px w-full my-6"></div><div class="flex flex-col items-start justify-between gap-3 sm:flex-row sm:items-center"><p class="text-xs text-[var(--color-slate-400)]">© <!-- -->2026<!-- --> <!-- -->AppAudit</p><p class="max-w-xl text-xs italic text-[var(--color-slate-400)] sm:text-right">AppAudit is an independent tool and is not affiliated with, endorsed by, or sponsored by Bubble Group, Inc.</p></div></div></footer>
vendor: 108 bytes, line 1
1<script data-cfasync="false" src="/cdn-cgi/scripts/5c5dd728/cloudflare-static/email-decode.min.js"></script>
1<script src="/_next/static/chunks/0.3xc-w3pom1m.js" id="_R_" async=""></script>
1<script>(self.__next_f=self.__next_f||[]).push([0])</script>
1<script>self.__next_f.push([1,"1:\"$Sreact.fragment\"\n2:I[73484,[\"/_next/static/chunks/11q-3mtsn6em~.js\",\"/_next/static/chunks/0enf2~-en9~u8.js\"],\"default\"]\n3:I[99582,[\"/_next/static/chunks/11q-3mtsn6em~.js\",\"/_next/static/chunks/0enf2~-en9~u8.js\"],\"default\"]\n4:I[6226,[\"/_next/static/chunks/11q-3mtsn6em~.js\",\"/_next/static/chunks/0enf2~-en9~u8.js\",\"/_next/static/chunks/0kt8zvevh9hby.js\",\"/_next/static/chunks/0rjpt-vo~urla.js\"],\"\"]\n5:I[98127,[\"/_next/static/chunks/11q-3mtsn6em~.js\",\"/_next/static/chunks/0enf2~-en9~u8.js\",\"/_next/static/chunks/0kt8zvevh9hby.js\",\"/_next/static/chunks/0rjpt-vo~urla.js\"],\"Image\"]\n6:I[20667,[\"/_next/static/chunks/11q-3mtsn6em~.js\",\"/_next/static/chunks/0enf2~-en9~u8.js\",\"/_next/static/chunks/0kt8zvevh9hby.js\",\"/_next/static/chunks/0rjpt-vo~urla.js\"],\"MarketingNav\"]\nd:I[53348,[\"/_next/static/chunks/11q-3mtsn6em~.js\",\"/_next/static/chunks/0enf2~-en9~u8.js\",\"/_next/static/chunks/0t8cdexyqfjyl.js\"],\"default\"]\n:HL[\"/_next/static/chunks/0tnthr7sm3wp9.css\",\"style\"]\n:HL[\"/_next/static/media/inter_latin_400_normal-s.p.0vig85~_2mxl3.woff2\",\"font\",{\"crossOrigin\":\"\",\"type\":\"font/woff2\"}]\n:HL[\"/_next/static/media/inter_latin_500_normal-s.p.0frew35n-hgkk.woff2\",\"font\",{\"crossOrigin\":\"\",\"type\":\"font/woff2\"}]\n:HL[\"/_next/static/media/inter_latin_600_normal-s.p.0rm8x4lrq0d8z.woff2\",\"font\",{\"crossOrigin\":\"\",\"type\":\"font/woff2\"}]\n:HL[\"/_next/static/media/inter_latin_700_normal-s.p.17~mssnzv.d-8.woff2\",\"font\",{\"crossOrigin\":\"\",\"type\":\"font/woff2\"}]\n"])</script>
1<script>self.__next_f.push([1,"0:{\"P\":null,\"c\":[\"\",\"privacy\"],\"q\":\"\",\"i\":false,\"f\":[[[\"\",{\"children\":[\"(marketing)\",{\"children\":[\"privacy\",{\"children\":[\"__PAGE__\",{}]}]}]},\"$undefined\",\"$undefined\",16],[[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/chunks/0tnthr7sm3wp9.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-0\",{\"src\":\"/_next/static/chunks/11q-3mtsn6em~.js\",\"async\":true,\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-1\",{\"src\":\"/_next/static/chunks/0enf2~-en9~u8.js\",\"async\":true,\"nonce\":\"$undefined\"}]],[\"$\",\"html\",null,{\"lang\":\"en\",\"className\":\"inter_d4b5abb6-module__B5KBgq__variable\",\"data-scroll-behavior\":\"smooth\",\"children\":[\"$\",\"body\",null,{\"children\":[[\"$\",\"script\",null,{\"type\":\"application/ld+json\",\"dangerouslySetInnerHTML\":{\"__html\":\"{\\\"@context\\\":\\\"https://schema.org\\\",\\\"@type\\\":\\\"SoftwareApplication\\\",\\\"name\\\":\\\"AppAudit\\\",\\\"description\\\":\\\"A local-first Chrome extension that scans your Bubble app and surfaces the patterns inflating your Workload Unit bill. Runs entirely in your browser â no AI, no backend, your app never leaves the page.\\\",\\\"url\\\":\\\"https://getappaudit.com\\\",\\\"applicationCategory\\\":\\\"DeveloperApplication\\\",\\\"operatingSystem\\\":\\\"Chrome\\\",\\\"offers\\\":[{\\\"@type\\\":\\\"Offer\\\",\\\"name\\\":\\\"Solo\\\",\\\"price\\\":\\\"19\\\",\\\"priceCurrency\\\":\\\"USD\\\",\\\"priceSpecification\\\":{\\\"@type\\\":\\\"UnitPriceSpecification\\\",\\\"price\\\":\\\"19\\\",\\\"priceCurrency\\\":\\\"USD\\\",\\\"referenceQuantity\\\":{\\\"@type\\\":\\\"QuantitativeValue\\\",\\\"value\\\":1,\\\"unitCode\\\":\\\"MON\\\"}}},{\\\"@type\\\":\\\"Offer\\\",\\\"name\\\":\\\"Agency\\\",\\\"price\\\":\\\"49\\\",\\\"priceCurrency\\\":\\\"USD\\\",\\\"priceSpecification\\\":{\\\"@type\\\":\\\"UnitPriceSpecification\\\",\\\"price\\\":\\\"49\\\",\\\"priceCurrency\\\":\\\"USD\\\",\\\"referenceQuantity\\\":{\\\"@type\\\":\\\"QuantitativeValue\\\",\\\"value\\\":1,\\\"unitCode\\\":\\\"MON\\\"}}}]}\"}}],[\"$\",\"a\",null,{\"href\":\"#main-content\",\"className\":\"sr-only focus:not-sr-only focus:fixed focus:left-4 focus:top-4 focus:z-50 focus:rounded-[var(--radius-btn)] focus:bg-[var(--color-indigo)] focus:px-4 focus:py-2 focus:text-sm focus:font-medium focus:text-white focus:outline-none focus:ring-2 focus:ring-[var(--color-indigo)] focus:ring-offset-2\",\"children\":\"Skip to content\"}],[\"$\",\"$L2\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L3\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":[[\"$\",\"main\",null,{\"id\":\"main-content\",\"className\":\"grid min-h-screen place-items-center px-4 text-center\",\"children\":[\"$\",\"div\",null,{\"className\":\"flex max-w-md flex-col items-center gap-6\",\"children\":[[\"$\",\"$L4\",null,{\"href\":\"/\",\"aria-label\":\"AppAudit home\",\"children\":[\"$\",\"$L5\",null,{\"src\":\"/logo-lockup.svg\",\"alt\":\"AppAudit â Find the patterns inflating your Bubble bill\",\"width\":144,\"height\":36,\"priority\":false,\"draggable\":false,\"className\":\"w-auto select-none h-9\"}]}],[\"$\",\"div\",null,{\"children\":[[\"$\",\"h1\",null,{\"className\":\"text-3xl font-semibold text-[var(--color-slate-900)]\",\"children\":\"Page not found\"}],[\"$\",\"p\",null,{\"className\":\"mt-2 text-[var(--color-slate-500)]\",\"children\":\"The page youâre looking for doesnât exist or has moved.\"}]]}],[\"$\",\"$L4\",null,{\"href\":\"/\",\"className\":\"inline-flex items-center justify-center gap-2 font-medium rounded-[var(--radius-cta)] transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[var(--color-indigo)] focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 bg-[var(--color-indigo)] text-white hover:bg-[var(--color-indigo-hover)] h-11 px-5 text-sm\",\"children\":[false,\"Back to home\"]}]]}]}],[]],\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]]}]}]]}],{\"children\":[[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"script\",\"script-0\",{\"src\":\"/_next/static/chunks/0kt8zvevh9hby.js\",\"async\":true,\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-1\",{\"src\":\"/_next/static/chunks/0rjpt-vo~urla.js\",\"async\":true,\"nonce\":\"$undefined\"}]],[[\"$\",\"$L6\",null,{}],[\"$\",\"main\",null,{\"id\":\"main-content\",\"children\":[\"$\",\"$L2\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L3\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":[[\"$\",\"main\",null,{\"id\":\"main-content\",\"className\":\"grid min-h-screen place-items-center px-4 text-center\",\"children\":\"$L7\"}],[]],\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]}],\"$L8\"]]}],{\"children\":[\"$L9\",{\"children\":[\"$La\",{}
1,null,false,null]},null,false,\"$@b\"]},null,false,null]},null,false,null],\"$Lc\",false]],\"m\":\"$undefined\",\"G\":[\"$d\",[\"$Le\"]],\"S\":true,\"h\":null,\"s\":\"$undefined\",\"l\":\"$undefined\",\"p\":\"$undefined\",\"d\":\"$undefined\",\"b\":\"GRMjAPAlSf35IrgwyIdo6\"}\n"])</script>
1<script>self.__next_f.push([1,"f:I[69035,[\"/_next/static/chunks/11q-3mtsn6em~.js\",\"/_next/static/chunks/0enf2~-en9~u8.js\",\"/_next/static/chunks/0kt8zvevh9hby.js\",\"/_next/static/chunks/0rjpt-vo~urla.js\"],\"Separator\"]\n1c:I[25326,[\"/_next/static/chunks/11q-3mtsn6em~.js\",\"/_next/static/chunks/0enf2~-en9~u8.js\"],\"ViewportBoundary\"]\n1e:I[25326,[\"/_next/static/chunks/11q-3mtsn6em~.js\",\"/_next/static/chunks/0enf2~-en9~u8.js\"],\"MetadataBoundary\"]\n1f:\"$Sreact.suspense\"\n7:[\"$\",\"div\",null,{\"className\":\"flex max-w-md flex-col items-center gap-6\",\"children\":[[\"$\",\"$L4\",null,{\"href\":\"/\",\"aria-label\":\"AppAudit home\",\"children\":[\"$\",\"$L5\",null,{\"src\":\"/logo-lockup.svg\",\"alt\":\"AppAudit â Find the patterns inflating your Bubble bill\",\"width\":144,\"height\":36,\"priority\":false,\"draggable\":false,\"className\":\"w-auto select-none h-9\"}]}],[\"$\",\"div\",null,{\"children\":[[\"$\",\"h1\",null,{\"className\":\"text-3xl font-semibold text-[var(--color-slate-900)]\",\"children\":\"Page not found\"}],[\"$\",\"p\",null,{\"className\":\"mt-2 text-[var(--color-slate-500)]\",\"children\":\"The page youâre looking for doesnât exist or has moved.\"}]]}],[\"$\",\"$L4\",null,{\"href\":\"/\",\"className\":\"inline-flex items-center justify-center gap-2 font-medium rounded-[var(--radius-cta)] transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[var(--color-indigo)] focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 bg-[var(--color-indigo)] text-white hover:bg-[var(--color-indigo-hover)] h-11 px-5 text-sm\",\"children\":[false,\"Back to home\"]}]]}]\n"])</script>
1<script>self.__next_f.push([1,"8:[\"$\",\"footer\",null,{\"className\":\"mt-16 border-t border-slate-200\",\"children\":[\"$\",\"div\",null,{\"className\":\"mx-auto max-w-6xl px-4 py-8 md:px-6\",\"children\":[[\"$\",\"div\",null,{\"className\":\"grid gap-6 md:grid-cols-[1fr_auto_auto] md:gap-12\",\"children\":[[\"$\",\"div\",null,{\"children\":[[\"$\",\"$L4\",null,{\"href\":\"/\",\"aria-label\":\"AppAudit home\",\"className\":\"inline-block\",\"children\":[\"$\",\"$L5\",null,{\"src\":\"/logo-lockup-notagline.svg\",\"alt\":\"AppAudit\",\"width\":133,\"height\":32,\"priority\":false,\"draggable\":false,\"className\":\"w-auto select-none h-8\"}]}],[\"$\",\"p\",null,{\"className\":\"mt-3 max-w-xs text-sm text-[var(--color-slate-500)]\",\"children\":[\"Made with \",[\"$\",\"span\",null,{\"aria-hidden\":\"true\",\"children\":\"â¤ï¸\"}],[\"$\",\"span\",null,{\"className\":\"sr-only\",\"children\":\"love\"}],\" for the Bubble.io community.\"]}]]}],[\"$\",\"nav\",null,{\"aria-label\":\"Product\",\"className\":\"flex flex-col gap-2\",\"children\":[[\"$\",\"h2\",null,{\"className\":\"text-sm font-semibold text-[var(--color-slate-900)]\",\"children\":\"Product\"}],[[\"$\",\"$L4\",\"Home\",{\"href\":\"/\",\"className\":\"inline-flex text-sm text-[var(--color-slate-500)] transition-colors hover:text-[var(--color-slate-900)] focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[var(--color-indigo)] focus-visible:ring-offset-2 rounded-sm\",\"children\":\"Home\"}],[\"$\",\"$L4\",\"How it works\",{\"href\":\"/how-it-works\",\"className\":\"inline-flex text-sm text-[var(--color-slate-500)] transition-colors hover:text-[var(--color-slate-900)] focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[var(--color-indigo)] focus-visible:ring-offset-2 rounded-sm\",\"children\":\"How it works\"}],[\"$\",\"$L4\",\"Pricing\",{\"href\":\"/pricing\",\"className\":\"inline-flex text-sm text-[var(--color-slate-500)] transition-colors hover:text-[var(--color-slate-900)] focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[var(--color-indigo)] focus-visible:ring-offset-2 rounded-sm\",\"children\":\"Pricing\"}],[\"$\",\"a\",\"Install Chrome extension\",{\"href\":\"https://chromewebstore.google.com/detail/appaudit-%E2%80%94-for-bubble/ehakfpjcmkifiefpcikhcdlieampelll\",\"target\":\"_blank\",\"rel\":\"noopener noreferrer\",\"className\":\"inline-flex text-sm text-[var(--color-slate-500)] transition-colors hover:text-[var(--color-slate-900)] focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[var(--color-indigo)] focus-visible:ring-offset-2 rounded-sm\",\"children\":\"Install Chrome extension\"}]]]}],[\"$\",\"nav\",null,{\"aria-label\":\"Legal\",\"className\":\"flex flex-col gap-2\",\"children\":[[\"$\",\"h2\",null,{\"className\":\"text-sm font-semibold text-[var(--color-slate-900)]\",\"children\":\"Legal\"}],[[\"$\",\"$L4\",\"Privacy\",{\"href\":\"/privacy\",\"className\":\"inline-flex text-sm text-[var(--color-slate-500)] transition-colors hover:text-[var(--color-slate-900)] focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[var(--color-indigo)] focus-visible:ring-offset-2 rounded-sm\",\"children\":\"Privacy\"}],[\"$\",\"$L4\",\"Terms\",{\"href\":\"/terms\",\"className\":\"inline-flex text-sm text-[var(--color-slate-500)] transition-colors hover:text-[var(--color-slate-900)] focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[var(--color-indigo)] focus-visible:ring-offset-2 rounded-sm\",\"children\":\"Terms\"}],[\"$\",\"a\",\"Contact\",{\"href\":\"mailto:[email protected]\",\"target\":\"$undefined\",\"rel\":\"$undefined\",\"className\":\"inline-flex text-sm text-[var(--color-slate-500)] transition-colors hover:text-[var(--color-slate-900)] focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[var(--color-indigo)] focus-visible:ring-offset-2 rounded-sm\",\"children\":\"Contact\"}]]]}]]}],[\"$\",\"$Lf\",null,{\"className\":\"my-6\"}],[\"$\",\"div\",null,{\"className\":\"flex flex-col items-start justify-between gap-3 sm:flex-row sm:items-center\",\"children\":[[\"$\",\"p\",null,{\"className\":\"text-xs text-[var(--color-slate-400)]\",\"children\":[\"© \",2026,\" \",\"AppAudit\"]}],[\"$\",\"p\",null,{\"className\":\"max-w-xl text-xs italic text-[var(--color-slate-400)] sm:text-right\",\"children\":\"AppAudit is an independent tool and is not affiliated with, endorsed by, or sponsored by Bubble Group, Inc.\"}]]}]]}]}]\n"])</script>
1<script>self.__next_f.push([1,"9:[\"$\",\"$1\",\"c\",{\"children\":[null,[\"$\",\"$L2\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L3\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]]}]\n"])</script>
1<script>self.__next_f.push([1,"a:[\"$\",\"$1\",\"c\",{\"children\":[[\"$\",\"article\",null,{\"className\":\"mx-auto max-w-6xl px-4 py-12 md:px-6 md:py-16\",\"children\":[[\"$\",\"header\",null,{\"className\":\"mb-8\",\"children\":[[\"$\",\"h1\",null,{\"className\":\"text-3xl font-semibold tracking-tight text-[var(--color-slate-900)] md:text-4xl\",\"children\":\"Privacy Policy\"}],[\"$\",\"p\",null,{\"className\":\"mt-2 text-sm text-[var(--color-slate-500)]\",\"children\":[\"Last updated \",\"June 13, 2026\"]}]]}],[\"$\",\"details\",null,{\"className\":\"mb-6 rounded-[var(--radius-cta)] ring-1 ring-black/[0.08] open:bg-slate-50 lg:hidden\",\"children\":[[\"$\",\"summary\",null,{\"className\":\"cursor-pointer px-4 py-3 text-sm font-medium text-[var(--color-slate-900)]\",\"children\":\"Jump to section\"}],[\"$\",\"nav\",null,{\"aria-label\":\"Table of contents\",\"className\":\"border-t border-black/[0.08] px-4 py-3\",\"children\":[\"$\",\"ol\",null,{\"className\":\"space-y-2 text-sm\",\"children\":[[\"$\",\"li\",\"p1\",{\"children\":[\"$\",\"a\",null,{\"href\":\"#p1\",\"className\":\"text-[var(--color-slate-500)] hover:text-[var(--color-slate-900)]\",\"children\":\"1. Your app never leaves your browser\"}]}],[\"$\",\"li\",\"p2\",{\"children\":[\"$\",\"a\",null,{\"href\":\"#p2\",\"className\":\"text-[var(--color-slate-500)] hover:text-[var(--color-slate-900)]\",\"children\":\"2. Information we receive directly\"}]}],[\"$\",\"li\",\"p3\",{\"children\":[\"$\",\"a\",null,{\"href\":\"#p3\",\"className\":\"text-[var(--color-slate-500)] hover:text-[var(--color-slate-900)]\",\"children\":\"3. What the browser extension does on your machine\"}]}],[\"$\",\"li\",\"p4\",{\"children\":[\"$\",\"a\",null,{\"href\":\"#p4\",\"className\":\"text-[var(--color-slate-500)] hover:text-[var(--color-slate-900)]\",\"children\":\"4. How we use the information we receive\"}]}],[\"$\",\"li\",\"p5\",{\"children\":[\"$\",\"a\",null,{\"href\":\"#p5\",\"className\":\"text-[var(--color-slate-500)] hover:text-[var(--color-slate-900)]\",\"children\":\"5. Third-party processors\"}]}],[\"$\",\"li\",\"p6\",{\"children\":[\"$\",\"a\",null,{\"href\":\"#p6\",\"className\":\"text-[var(--color-slate-500)] hover:text-[var(--color-slate-900)]\",\"children\":\"6. Data retention\"}]}],[\"$\",\"li\",\"p7\",{\"children\":[\"$\",\"a\",null,{\"href\":\"#p7\",\"className\":\"text-[var(--color-slate-500)] hover:text-[var(--color-slate-900)]\",\"children\":\"7. Your rights\"}]}],[\"$\",\"li\",\"p8\",{\"children\":[\"$\",\"a\",null,{\"href\":\"#p8\",\"className\":\"text-[var(--color-slate-500)] hover:text-[var(--color-slate-900)]\",\"children\":\"8. Security\"}]}],[\"$\",\"li\",\"p9\",{\"children\":[\"$\",\"a\",null,{\"href\":\"#p9\",\"className\":\"text-[var(--color-slate-500)] hover:text-[var(--color-slate-900)]\",\"children\":\"9. Children\"}]}],[\"$\",\"li\",\"p10\",{\"children\":[\"$\",\"a\",null,{\"href\":\"#p10\",\"className\":\"text-[var(--color-slate-500)] hover:text-[var(--color-slate-900)]\",\"children\":\"10. International users\"}]}],[\"$\",\"li\",\"p11\",{\"children\":[\"$\",\"a\",null,{\"href\":\"#p11\",\"className\":\"text-[var(--color-slate-500)] hover:text-[var(--color-slate-900)]\",\"children\":\"11. Changes to this policy\"}]}],[\"$\",\"li\",\"p12\",{\"children\":[\"$\",\"a\",null,{\"href\":\"#p12\",\"className\":\"text-[var(--color-slate-500)] hover:text-[var(--color-slate-900)]\",\"children\":\"12. Contact\"}]}]]}]}]]}],[\"$\",\"div\",null,{\"className\":\"lg:grid lg:grid-cols-[16rem_1fr] lg:gap-12\",\"children\":[[\"$\",\"aside\",null,{\"className\":\"hidden lg:block\",\"children\":[\"$\",\"nav\",null,{\"aria-label\":\"Table of contents\",\"className\":\"sticky top-20 max-h-[calc(100vh-6rem)] overflow-y-auto pr-2\",\"children\":[[\"$\",\"h2\",null,{\"className\":\"mb-3 text-xs font-semibold uppercase tracking-wide text-[var(--color-slate-400)]\",\"children\":\"On this page\"}],[\"$\",\"ol\",null,{\"className\":\"space-y-2 text-sm\",\"children\":[[\"$\",\"li\",\"p1\",{\"children\":[\"$\",\"a\",null,{\"href\":\"#p1\",\"className\":\"block text-[var(--color-slate-500)] transition-colors hover:text-[var(--color-slate-900)]\",\"children\":\"1. Your app never leaves your browser\"}]}],[\"$\",\"li\",\"p2\",{\"children\":[\"$\",\"a\",null,{\"href\":\"#p2\",\"className\":\"block text-[var(--color-slate-500)] transition-colors hover:text-[var(--color-slate-900)]\",\"children\":\"2. Information we receive directly\"}]}],[\"$\",\"li\",\"p3\",{\"children\":[\"$\",\"a\",null,{\"href\":\"#p3\",\"className\":\"block text-[var(--color-slate-500)] transition-colors hover:text-[var(--color-slate-900)]\",\"children\":\"3. What the browser extension does on your machine\"}]}],\"$L10\",\"$L11\",\"$L12\",\"$L13\",\"$L14\",\"$L15\",\"$L16\",\"$L17\",\"$L18\"]}]]}]}],\"$L19\"]}]]}],null,\"$L1a\"]}]\n"])</script>
1<script>self.__next_f.push([1,"1b:[]\nb:\"$W1b\"\nc:[\"$\",\"$1\",\"h\",{\"children\":[null,[\"$\",\"$L1c\",null,{\"children\":\"$L1d\"}],[\"$\",\"div\",null,{\"hidden\":true,\"children\":[\"$\",\"$L1e\",null,{\"children\":[\"$\",\"$1f\",null,{\"name\":\"Next.Metadata\",\"children\":\"$L20\"}]}]}],[\"$\",\"meta\",null,{\"name\":\"next-size-adjust\",\"content\":\"\"}]]}]\ne:[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/chunks/0tnthr7sm3wp9.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}]\n"])</script>
1<script>self.__next_f.push([1,"2c:I[25326,[\"/_next/static/chunks/11q-3mtsn6em~.js\",\"/_next/static/chunks/0enf2~-en9~u8.js\"],\"OutletBoundary\"]\n10:[\"$\",\"li\",\"p4\",{\"children\":[\"$\",\"a\",null,{\"href\":\"#p4\",\"className\":\"block text-[var(--color-slate-500)] transition-colors hover:text-[var(--color-slate-900)]\",\"children\":\"4. How we use the information we receive\"}]}]\n11:[\"$\",\"li\",\"p5\",{\"children\":[\"$\",\"a\",null,{\"href\":\"#p5\",\"className\":\"block text-[var(--color-slate-500)] transition-colors hover:text-[var(--color-slate-900)]\",\"children\":\"5. Third-party processors\"}]}]\n12:[\"$\",\"li\",\"p6\",{\"children\":[\"$\",\"a\",null,{\"href\":\"#p6\",\"className\":\"block text-[var(--color-slate-500)] transition-colors hover:text-[var(--color-slate-900)]\",\"children\":\"6. Data retention\"}]}]\n13:[\"$\",\"li\",\"p7\",{\"children\":[\"$\",\"a\",null,{\"href\":\"#p7\",\"className\":\"block text-[var(--color-slate-500)] transition-colors hover:text-[var(--color-slate-900)]\",\"children\":\"7. Your rights\"}]}]\n14:[\"$\",\"li\",\"p8\",{\"children\":[\"$\",\"a\",null,{\"href\":\"#p8\",\"className\":\"block text-[var(--color-slate-500)] transition-colors hover:text-[var(--color-slate-900)]\",\"children\":\"8. Security\"}]}]\n15:[\"$\",\"li\",\"p9\",{\"children\":[\"$\",\"a\",null,{\"href\":\"#p9\",\"className\":\"block text-[var(--color-slate-500)] transition-colors hover:text-[var(--color-slate-900)]\",\"children\":\"9. Children\"}]}]\n16:[\"$\",\"li\",\"p10\",{\"children\":[\"$\",\"a\",null,{\"href\":\"#p10\",\"className\":\"block text-[var(--color-slate-500)] transition-colors hover:text-[var(--color-slate-900)]\",\"children\":\"10. International users\"}]}]\n17:[\"$\",\"li\",\"p11\",{\"children\":[\"$\",\"a\",null,{\"href\":\"#p11\",\"className\":\"block text-[var(--color-slate-500)] transition-colors hover:text-[var(--color-slate-900)]\",\"children\":\"11. Changes to this policy\"}]}]\n18:[\"$\",\"li\",\"p12\",{\"children\":[\"$\",\"a\",null,{\"href\":\"#p12\",\"className\":\"block text-[var(--color-slate-500)] transition-colors hover:text-[var(--color-slate-900)]\",\"children\":\"12. Contact\"}]}]\n"])</script>
1<script>self.__next_f.push([1,"19:[\"$\",\"div\",null,{\"className\":\"prose-legal max-w-3xl text-[var(--color-slate-500)]\",\"children\":[[\"$\",\"p\",null,{\"children\":\"This Privacy Policy explains how AppAudit (\\\"we,\\\" \\\"us,\\\" or \\\"our\\\") handles information when you use the AppAudit Chrome extension, the https://getappaudit.com website, and any related services (collectively, the \\\"Service\\\").\"}],[\"$\",\"p\",null,{\"children\":[\"The short version: \",[\"$\",\"strong\",null,{\"children\":\"your Bubble app never leaves your browser.\"}],\" The audit runs locally. We do not receive your application data.\"]}],[\"$\",\"p\",null,{\"children\":[\"You can contact us at \",[\"$\",\"a\",null,{\"href\":\"mailto:[email protected]\",\"children\":\"[email protected]\"}],\".\"]}],[\"$\",\"p\",null,{\"children\":\"AppAudit is an independent tool and is not affiliated with, endorsed by, or sponsored by Bubble Group, Inc.\"}],[[\"$\",\"section\",\"p1\",{\"children\":[[\"$\",\"h2\",null,{\"id\":\"p1\",\"children\":\"1. Your app never leaves your browser\"}],[[\"$\",\"p\",null,{\"children\":\"AppAudit is local-first by design. When you run an audit, the extension reads your Bubble application's in-memory structure inside your browser, redacts known secret patterns locally, and runs a deterministic rules engine in a Web Worker.\"}],[\"$\",\"p\",null,{\"children\":\"We do not receive your application data. There is no backend that processes it. There is no AI provider in the loop. There is no telemetry pipeline that ships fragments of it elsewhere. The audit you see is computed on your machine.\"}]]]}],[\"$\",\"section\",\"p2\",{\"children\":[[\"$\",\"h2\",null,{\"id\":\"p2\",\"children\":\"2. Information we receive directly\"}],[[\"$\",\"p\",null,{\"children\":\"We receive only the information you choose to give us directly to operate the billing relationship and respond to you:\"}],[\"$\",\"ul\",null,{\"children\":[[\"$\",\"li\",null,{\"children\":[[\"$\",\"strong\",null,{\"children\":\"Subscription email.\"}],\" When you subscribe through our payment processor, the processor shares the email address associated with your subscription so we can deliver your license key and subscription receipts.\"]}],[\"$\",\"li\",null,{\"children\":[[\"$\",\"strong\",null,{\"children\":\"Payment information.\"}],\" Payment is handled by our payment processor, which acts as merchant of record. We do not receive or store your card details. We receive only the information the processor passes to us to confirm the subscription (such as transaction reference, amount, and email).\"]}],[\"$\",\"li\",null,{\"children\":[[\"$\",\"strong\",null,{\"children\":\"Support correspondence.\"}],\" If you email us, we retain your message and any attachments to respond to you and maintain a record of the request.\"]}]]}]]]}],[\"$\",\"section\",\"p3\",{\"children\":[[\"$\",\"h2\",null,{\"id\":\"p3\",\"children\":\"3. What the browser extension does on your machine\"}],[[\"$\",\"p\",null,{\"children\":\"When you click âAudit my appâ inside your Bubble editor:\"}],[\"$\",\"ul\",null,{\"children\":[[\"$\",\"li\",null,{\"children\":\"The extension reads your appâs in-memory structure from the page.\"}],[\"$\",\"li\",null,{\"children\":\"The extension redacts known secret patterns before any preview renders. Redacted patterns include API keys, JSON Web Tokens, HTTP bearer tokens, cloud access keys, personal access tokens for code-hosting platforms, chat-platform tokens, and generic high-entropy strings.\"}],[\"$\",\"li\",null,{\"children\":\"The extension runs a deterministic rules engine over the sanitized structure in a Web Worker, then renders findings inside the extension UI.\"}],[\"$\",\"li\",null,{\"children\":\"The extension validates your license key against our license server.\"}]]}],[\"$\",\"p\",null,{\"children\":\"The license-key check is the only network call the extension makes during an audit. The payload contains only the license key and basic activation metadata (such as the installation identifier the extension uses to enforce device limits). Your Bubble application data is never part of that request.\"}]]]}],\"$L21\",\"$L22\",\"$L23\",\"$L24\",\"$L25\",\"$L26\",\"$L27\",\"$L28\",\"$L29\"],\"$L2a\",\"$L2b\"]}]\n"])</script>
1<script>self.__next_f.push([1,"1a:[\"$\",\"$L2c\",null,{\"children\":[\"$\",\"$1f\",null,{\"name\":\"Next.MetadataOutlet\",\"children\":\"$@2d\"}]}]\n"])</script>
1<script>self.__next_f.push([1,"21:[\"$\",\"section\",\"p4\",{\"children\":[[\"$\",\"h2\",null,{\"id\":\"p4\",\"children\":\"4. How we use the information we receive\"}],[[\"$\",\"p\",null,{\"children\":\"We use the information we receive to:\"}],[\"$\",\"ul\",null,{\"children\":[[\"$\",\"li\",null,{\"children\":\"Activate, validate, and renew your subscription.\"}],[\"$\",\"li\",null,{\"children\":\"Send transactional emails (license delivery, subscription receipts).\"}],[\"$\",\"li\",null,{\"children\":\"Respond to support requests.\"}],[\"$\",\"li\",null,{\"children\":\"Comply with applicable legal obligations.\"}]]}],[\"$\",\"p\",null,{\"children\":\"We do not sell personal information. We do not display advertising in the Service. We do not use audit content to train machine-learning models â we do not receive audit content at all.\"}]]]}]\n"])</script>
1<script>self.__next_f.push([1,"22:[\"$\",\"section\",\"p5\",{\"children\":[[\"$\",\"h2\",null,{\"id\":\"p5\",\"children\":\"5. Third-party processors\"}],[[\"$\",\"p\",null,{\"children\":\"We rely on a small number of third-party providers to operate the Service. Each processes only the information needed for its function:\"}],[\"$\",\"ul\",null,{\"children\":[[\"$\",\"li\",null,{\"children\":[[\"$\",\"strong\",null,{\"children\":\"Payment processor (merchant of record).\"}],\" Handles subscription checkout, billing, and applicable tax collection. Receives the information you provide at checkout.\"]}],[\"$\",\"li\",null,{\"children\":[[\"$\",\"strong\",null,{\"children\":\"License server.\"}],\" Validates license keys for the extension. Receives the license key and minimal activation metadata.\"]}],[\"$\",\"li\",null,{\"children\":[[\"$\",\"strong\",null,{\"children\":\"Transactional email service.\"}],\" Sends license delivery and receipts. Receives the email address and message content.\"]}],[\"$\",\"li\",null,{\"children\":[[\"$\",\"strong\",null,{\"children\":\"Static-site hosting provider.\"}],\" \",\"Serves https://getappaudit.com. Receives standard server-level request information that any web host receives.\"]}],[\"$\",\"li\",null,{\"children\":[[\"$\",\"strong\",null,{\"children\":\"Form submission service.\"}],\" \",\"If you submit the optional feature-updates email form on https://getappaudit.com, your email is delivered to us through a third-party form service. Receives only the email address you submit.\"]}]]}],[\"$\",\"p\",null,{\"children\":[\"The current list of processors is available on request to \",[\"$\",\"a\",null,{\"href\":\"mailto:[email protected]\",\"children\":\"[email protected]\"}],\".\"]}]]]}]\n"])</script>
1<script>self.__next_f.push([1,"23:[\"$\",\"section\",\"p6\",{\"children\":[[\"$\",\"h2\",null,{\"id\":\"p6\",\"children\":\"6. Data retention\"}],[[\"$\",\"p\",null,{\"children\":\"We retain only the information needed to operate the Service and meet our legal obligations:\"}],[\"$\",\"ul\",null,{\"children\":[[\"$\",\"li\",null,{\"children\":\"Subscription and license records are retained for as long as your subscription is active and for a period afterward to satisfy billing, accounting, and tax requirements.\"}],[\"$\",\"li\",null,{\"children\":\"Support correspondence is retained for as long as needed to address the issue and a reasonable period afterward.\"}],[\"$\",\"li\",null,{\"children\":\"Audit content is not retained because we do not receive it.\"}]]}],[\"$\",\"p\",null,{\"children\":[\"You can ask us to delete information we hold about you, subject to legal retention obligations, by emailing \",[\"$\",\"a\",null,{\"href\":\"mailto:[email protected]\",\"children\":\"[email protected]\"}],\".\"]}]]]}]\n24:[\"$\",\"section\",\"p7\",{\"children\":[[\"$\",\"h2\",null,{\"id\":\"p7\",\"children\":\"7. Your rights\"}],[[\"$\",\"p\",null,{\"children\":[\"Depending on where you live, you may have rights to access, correct, delete, port, or object to certain uses of your personal data, and to withdraw consent. To exercise any of these rights, email \",[\"$\",\"a\",null,{\"href\":\"mailto:[email protected]\",\"children\":\"[email protected]\"}],\". We will respond within a reasonable time consistent with applicable law.\"]}],[\"$\",\"p\",null,{\"children\":\"You may also have a right to complain to your local data-protection authority.\"}]]]}]\n25:[\"$\",\"section\",\"p8\",{\"children\":[[\"$\",\"h2\",null,{\"id\":\"p8\",\"children\":\"8. Security\"}],[[\"$\",\"p\",null,{\"children\":\"We implement reasonable technical and organizational measures to protect data:\"}],[\"$\",\"ul\",null,{\"children\":[[\"$\",\"li\",null,{\"children\":\"Data in transit between the extension and the license server is encrypted in transit.\"}],[\"$\",\"li\",null,{\"children\":\"Secret patterns are redacted in your browser by the extension before any preview renders, and your application data is not transmitted to us at any point.\"}],[\"$\",\"li\",null,{\"children\":\"Access to processor systems is restricted to authorized personnel and protected with industry-standard controls.\"}]]}],[\"$\",\"p\",null,{\"children\":\"No system is perfectly secure. If we become aware of a security incident affecting your information, we will notify you in accordance with applicable law.\"}]]]}]\n26:[\"$\",\"section\",\"p9\",{\"children\":[[\"$\",\"h2\",null,{\"id\":\"p9\",\"children\":\"9. Children\"}],[\"$\",\"p\",null,{\"children\":[\"The Service is not directed to children. We do not knowingly collect personal information from children. If you believe a child has provided us with personal information, please contact \",[\"$\",\"a\",null,{\"href\":\"mailto:[email protected]\",\"children\":\"[email protected]\"}],\".\"]}]]}]\n27:[\"$\",\"section\",\"p10\",{\"children\":[[\"$\",\"h2\",null,{\"id\":\"p10\",\"children\":\"10. International users\"}],[\"$\",\"p\",null,{\"children\":\"AppAudit is offered globally. Information you provide may be processed in the country where our processors operate. Where required by law, we rely on appropriate safeguards for cross-border transfers.\"}]]}]\n28:[\"$\",\"section\",\"p11\",{\"children\":[[\"$\",\"h2\",null,{\"id\":\"p11\",\"children\":\"11. Changes to this policy\"}],[\"$\",\"p\",null,{\"children\":\"We may update this Privacy Policy from time to time. We will post the updated policy on https://getappaudit.com and update the \\\"last updated\\\" date. Continued use of the Service after changes take effect constitutes acceptance.\"}]]}]\n29:[\"$\",\"section\",\"p12\",{\"children\":[[\"$\",\"h2\",null,{\"id\":\"p12\",\"children\":\"12. Contact\"}],[[\"$\",\"p\",null,{\"children\":\"For privacy questions, requests, or complaints:\"}],[\"$\",\"p\",null,{\"children\":[[\"$\",\"strong\",null,{\"children\":\"Email:\"}],\" \",[\"$\",\"a\",null,{\"href\":\"mailto:[email protected]\",\"children\":\"[email protected]\"}]]}]]]}]\n2a:[\"$\",\"hr\",null,{\"className\":\"my-8 border-black/[0.08]\"}]\n2b:[\"$\",\"p\",null,{\"className\":\"text-xs italic text-[var(--color-slate-400)]\",\"children\":\"AppAudit is an independent tool and is not affiliated with, endorsed by, or sponsored by"])</script>
1<script>self.__next_f.push([1," Bubble Group, Inc.\"}]\n"])</script>
1<script>self.__next_f.push([1,"1d:[[\"$\",\"meta\",\"0\",{\"charSet\":\"utf-8\"}],[\"$\",\"meta\",\"1\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1\"}]]\n"])</script>
1<script>self.__next_f.push([1,"2e:I[20676,[\"/_next/static/chunks/11q-3mtsn6em~.js\",\"/_next/static/chunks/0enf2~-en9~u8.js\"],\"IconMark\"]\n"])</script>
1<script>self.__next_f.push([1,"20:[[\"$\",\"title\",\"0\",{\"children\":\"Privacy Policy · AppAudit\"}],[\"$\",\"meta\",\"1\",{\"name\":\"description\",\"content\":\"How AppAudit handles your data. Your Bubble app never leaves your browser â local-first audit with no backend and no analytics.\"}],[\"$\",\"meta\",\"2\",{\"name\":\"application-name\",\"content\":\"AppAudit\"}],[\"$\",\"meta\",\"3\",{\"name\":\"robots\",\"content\":\"index, follow\"}],[\"$\",\"link\",\"4\",{\"rel\":\"canonical\",\"href\":\"https://getappaudit.com/privacy\"}],[\"$\",\"meta\",\"5\",{\"property\":\"og:title\",\"content\":\"AppAudit â Find the patterns inflating your Bubble bill\"}],[\"$\",\"meta\",\"6\",{\"property\":\"og:description\",\"content\":\"A local-first Chrome extension that scans your Bubble app and surfaces the patterns inflating your Workload Unit bill. Runs entirely in your browser â no AI, no backend, your app never leaves the page.\"}],[\"$\",\"meta\",\"7\",{\"property\":\"og:url\",\"content\":\"https://getappaudit.com\"}],[\"$\",\"meta\",\"8\",{\"property\":\"og:site_name\",\"content\":\"AppAudit\"}],[\"$\",\"meta\",\"9\",{\"property\":\"og:image\",\"content\":\"https://getappaudit.com/og-image.png\"}],[\"$\",\"meta\",\"10\",{\"property\":\"og:image:width\",\"content\":\"1200\"}],[\"$\",\"meta\",\"11\",{\"property\":\"og:image:height\",\"content\":\"630\"}],[\"$\",\"meta\",\"12\",{\"property\":\"og:image:alt\",\"content\":\"AppAudit\"}],[\"$\",\"meta\",\"13\",{\"property\":\"og:type\",\"content\":\"website\"}],[\"$\",\"meta\",\"14\",{\"name\":\"twitter:card\",\"content\":\"summary_large_image\"}],[\"$\",\"meta\",\"15\",{\"name\":\"twitter:title\",\"content\":\"AppAudit â Find the patterns inflating your Bubble bill\"}],[\"$\",\"meta\",\"16\",{\"name\":\"twitter:description\",\"content\":\"A local-first Chrome extension that scans your Bubble app and surfaces the patterns inflating your Workload Unit bill. Runs entirely in your browser â no AI, no backend, your app never leaves the page.\"}],[\"$\",\"meta\",\"17\",{\"name\":\"twitter:image\",\"content\":\"https://getappaudit.com/og-image.png\"}],[\"$\",\"link\",\"18\",{\"rel\":\"icon\",\"href\":\"/favicon.ico\",\"sizes\":\"32x32\"}],[\"$\",\"link\",\"19\",{\"rel\":\"icon\",\"href\":\"/icons/icon-32.png\",\"type\":\"image/png\",\"sizes\":\"32x32\"}],[\"$\",\"link\",\"20\",{\"rel\":\"icon\",\"href\":\"/icons/icon-128.png\",\"type\":\"image/png\",\"sizes\":\"128x128\"}],[\"$\",\"link\",\"21\",{\"rel\":\"apple-touch-icon\",\"href\":\"/icons/icon-256.png\"}],[\"$\",\"$L2e\",\"22\",{}]]\n"])</script>
1<script>self.__next_f.push([1,"2d:null\n"])</script>
1<script type="module" src="https://static.cloudflareinsights.com/beacon.min.js/v31edd6df95cf4e85bb4c19e7a9bdbcba1788362987495" integrity="sha512-iIg7k2xntmwu6/uSb5tpc/hySgZc4eoL31yB29W6tJFo2akwjPWcEqnCEdJvGexCL0KEQwVYv5BlowfhVz26hg==" data-cf-beacon='{"version":"2024.11.0","token":"1993068169c140479eed3ea77ade2163","r":1,"spa":2}' crossorigin="anonymous"></script>
1 2</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.