Privacy Policy

Ghost Code — Shopify Theme Audit App

Effective date: October 12, 2026

This Privacy Policy explains how Alpenglow Software LLC ("we," "us," "our"), operator of Ghost Code ("the App") collects, uses, stores, and protects information when you install and use the App through the Shopify platform.

1. Information We Collect

Data from Shopify APIs

When you install the App, we access the following through the Shopify Admin API using the read_themes scope:

We do not request write access to your themes. We do not modify any theme files.

Optional scopes

You can grant additional read-only scopes from the Permissions card on the App's Settings page, or from the optional link on the App's home page before your first scan. Each one is requested through Shopify's consent screen, and the App does not access that data until you approve it. You can revoke these scopes at any time in your Shopify admin.

If you do not grant a scope, the App skips the checks that depend on it.

Your public storefront homepage

When the App scans your published theme, our server loads your store's public homepage once per scan (again only if that step is retried after an error), the same page any visitor sees. If your homepage redirects, the App follows up to 3 redirects, and only to your primary domain or your myshopify.com domain. If it redirects anywhere else, the App skips this check. We use the page only for three things: to find the list of script addresses that Shopify adds for your installed apps ("script tags"); to find "missing snippet" Liquid error messages that Shopify has printed on the page (for example "Liquid error (layout/theme line 309): Could not find asset snippets/example.liquid"), which we report only when your theme files confirm the snippet is missing; and to confirm it is a Shopify page that is not password-protected. We do not read or keep any other text on the page. Our requests identify themselves with the User-Agent GhostCode/1.0 (+https://alpenglowsoftware.com). We do not log in, submit forms, or send cookies. We do not collect information about your visitors or customers. If your storefront is password-protected, the App does not try to get past the password page and skips this check. Before a store speed report, the App also loads your homepage once in the same way, only to check whether it is password-protected.

Data collected through Shopify session

Shopify provides the following data as part of the standard app authentication process:

This session data is managed by Shopify's official session storage library and is required for the App to function within the Shopify Admin.

Store owner email address and store name

If your store receives the summary email (see Section 2), we read your store owner's email address and your store's name from the Shopify Admin API. Shopify describes the email as the address it uses to communicate with the shop owner. Reading them does not require any additional scope. It is not your public customer-facing contact email, and it is not a staff member's email address.

We store a copy of both on your shop record and refresh them from Shopify from time to time while the App is installed. We use the email address only to send the summary email and to show you, in the App, which address the summary goes to. We use the store name only to address the summary email to your store.

Information you provide

Usage of the App

The App records your use of its own pages so we can operate and improve it. These are server-side records kept in our own database:

This does not use cookies or third-party analytics tools, and it does not record anything outside the App's own pages.

Data we do NOT collect

2. How We Use Your Information

We use the data we collect solely to provide and improve the App's services:

3. How We Process Theme and Storefront Data

Your theme files are processed as follows:

  1. Theme files are fetched from the Shopify API and processed in memory.
  2. Pattern matching detects orphaned code artifacts.
  3. Only the scan findings (metadata and short code snippets) are stored in our database.
  4. Data accessed through optional scopes is processed the same way: only findings are stored.
  5. Full theme file contents are not stored — they are discarded after processing.
  6. Your public storefront homepage is fetched directly from your store over HTTPS and processed in memory. Only two things are kept: the list of script addresses (without query strings or fragments), and, for each confirmed Liquid error, the theme file path, line number and snippet name from the error message. The page itself is not stored.

4. Data Storage and Security

5. Third-Party Services

The App uses the following third-party services to operate:

ServicePurposeData shared
Shopify Admin API Theme file access and authentication Session tokens, theme queries
Your Shopify storefront Reading your public homepage for script tags and Liquid errors A standard HTTPS request from our server (our server's IP address and the User-Agent GhostCode/1.0 (+https://alpenglowsoftware.com)); no store or customer data is sent
Inngest Background job scheduling Shop ID, theme ID, scan metadata (not theme content)
Railway Application and database hosting All stored data (encrypted)
Google PageSpeed Insights Store speed report (Professional plan) and the free speed test (Free and Standard plans) The public URLs of your storefront homepage and one product page. No theme files, credentials, or personal data
Resend Transactional email: notifications to the operator (feedback notifications, operational alerts) and the summary email to your store owner For operator notifications: feedback rating and answers you submit, and your shop domain (not the feedback contact email you give us). For the summary email: your store owner's email address and the email content described in Section 2

No theme file or storefront page contents are transmitted to Inngest or any other external service. Theme files are fetched from the Shopify API, and your storefront homepage is fetched directly from your store. Both are processed on our application server.

6. Data Retention

7. Your Rights

You have the right to:

We respond to all data requests within 30 days.

8. International Data Transfers

Your data is processed and stored on servers located in the United States. By using the App, you consent to the transfer of your data to the United States for processing.

9. Cookies and Tracking

The App does not use cookies, tracking pixels, or any third-party analytics or advertising technologies. The App records your use of its own pages on our servers to operate and improve it, as described in Section 1. It does not track your activity elsewhere in the Shopify Admin.

10. Children's Privacy

The App is designed for use by Shopify merchants (business users) and is not directed at children under 13. We do not knowingly collect data from children.

11. Changes to This Policy

We may update this Privacy Policy from time to time. If we make material changes, we will update the effective date at the top of this page. Continued use of the App after changes constitutes acceptance of the updated policy.

12. Contact Us

If you have questions about this Privacy Policy or want to exercise your data rights, contact us at:

Email: support@alpenglowsoftware.com