How to disable nused GTStandard font loaded hurting performance

Topic summary

A Shopify store owner discovered an unused GTStandard font (~63.5 KB) being loaded on every page via an injected <style> block with data-description="gravity-font-faces", adding 4–5 seconds to load times on slower connections.

Source identified: The font injection comes from Shop Pay. When Shop Pay was deactivated in Settings → Payments → Shopify Payments → Manage, the font stopped loading. Reactivating Shop Pay brought it back.

Troubleshooting steps taken:

  • Searched theme code for shoplift, gravity-font-faces, GTStandard — no results
  • Checked Theme app embeds — no Shop-related toggles found
  • Verified no Shoplift app installed and no related pixels configured
  • Disabled apps and Shop sales channel — font persisted

Workaround implemented: Added JavaScript to theme.liquid that removes any <style> or <link> elements containing the unwanted font references, using both DOMContentLoaded listener and MutationObserver to catch dynamically injected styles. This successfully prevented the font download.

Alternative suggestion: Override the font-face declaration in CSS using src: local('Arial') to prevent the network request.

The issue remains unresolved at the platform level — no native Shopify setting exists to disable only the font injection while keeping Shop Pay active.

Summarized with AI on October 23. AI used: claude-sonnet-4-5-20250929.

Hi everyone,

I’m seeing an unused font being downloaded on my storefront (https://jaiio.fr) and I can’t find a clean way to stop it.
Here is the font file that is loaded on every page:

https://cdn.shopify.com/shop-assets/static_uploads/shoplift/GTStandard-MRegular.woff2

It shows up in PageSpeed Insights / DevTools Network as a ~63.5 KB request and adds ~4–5s in the waterfall on slower connections. The font is not used anywhere in my theme.

DevTools points to an inline <style> block injected into the page (initiator shows (index):8087) with this exact content:

<style data-description="gravity-font-faces">
  @font-face {
    font-family: 'GTStandard-M';
    src: url('https://cdn.shopify.com/shop-assets/static_uploads/shoplift/GTStandard-MRegular.woff2') format('woff2');
    font-style: normal;
    font-weight: 450;
    font-display: swap;
  }
  @font-face {
    font-family: 'GTStandard-M';
    src: url('https://cdn.shopify.com/shop-assets/static_uploads/shoplift/GTStandard-MMedium.woff2') format('woff2');
    font-style: normal;
    font-weight: 500;
    font-display: swap;
  }
  @font-face {
    font-family: 'GTStandard-M';
    src: url('https://cdn.shopify.com/shop-assets/static_uploads/shoplift/GTStandard-MSemibold.woff2') format('woff2');
    font-style: normal;
    font-weight: 600;
    font-display: swap;
  }
</style>

I’ve tried the following:

  • Duplicated the theme and tested with a preview URL (same behavior).

  • Searched the entire theme for: shoplift, gravity-font-faces, shop-js, shop-pay, installments, shop-promise, Follow on Shop, Shop Minis — nothing in the code.

  • Disabled apps on another theme to rule them out.

  • Removed the Shop sales channel — the font still loads.

  • Checked Customer events / Pixels — no pixel named Shoplift or anything obviously related.

  • Couldn’t find UI toggles in Settings → Payments to hide Shop Pay stuff.


Here are my questions:

  • How can I prevent the Gravity / GTStandard font from loading on my Shopify store?

  • If this comes from Shop Pay (or a related script), can we disable only the font injection?

Hello!

Have you found a way to solve it?

Thanks!

Please try to check if this is related to the ShopPay: Go to your Shopify admin > Settings > Payments > Manage (under Shopify Payments) > Deactivate Shop Pay. Reload your storefront and check if the font request disappears. If it does, this confirms the source. You can reactivate it afterward if needed.

Hey @bflorestal :waving_hand:

That font is coming from a script that injects Shop’s Gravity font (GTStandard-M) into the page. The tell is:

<style data-description="gravity-font-faces"> … GTStandard-M … /shop-assets/static_uploads/shoplift/ … </style>

Two places normally inject this:

  1. Shop / Shop Pay related embeds (Shop Promise, Follow on Shop, Shop Pay Installments, Shop Minis)

  2. The Shoplift A/B testing app (its assets also live under /shop-assets/…/shoplift/)

Because the style is inline and not in your theme files, you have to turn off the embed / channel / pixel that’s adding it.

Do this, in order

  1. Theme app embeds (most likely)

    • Online Store → Themes → Customize

    • Top left dropdown: Theme settings → App embeds

    • Toggle off anything named Shop, Shop Promise, Shop Minis, Follow on Shop, Shop Pay Installments, or Shoplift / Experiments.

    • Save and hard-refresh (or test a preview URL).

  2. Sales channels / pixels

    • Settings → Apps and sales channels: remove/disable Shop (you said you did; still check your other themes—embed state is per theme).

    • Customer events (Pixels): remove any Shop / Shoplift pixel.

  3. Payments settings (if needed)

    • Settings → Payments → Shopify Payments → Manage

    • Under Wallets/Accelerated checkouts, temporarily uncheck Shop Pay and Shop Pay Installments to confirm they’re not the source.

    • If the font stops loading, you can re-enable and keep embeds off so the storefront stays clean.

  4. Leftover code check

    • Edit code → global search for: shoplift, gravity-font-faces, GTStandard.

    • If you find an old snippet or script include, remove it.

If you can’t remove the injector but want to neutralize the download

You can add a no-op font-face so the browser won’t fetch that file:

/* place in assets/base.css at the very top */
@font-face {
  font-family: 'GTStandard-M';
  src: local('Arial'); /* or any local fallback */
  font-weight: 400 700;
  font-style: normal;
  font-display: swap;
}

This overrides the injected face and stops the network request if nothing explicitly forces that remote URL.

Hello, after deactivating Shop Pay and checking the font requests, I noticed that GTStandard wasn’t imported anymore. Then I reactivated it and the font came back.

Hi,

Thanks for the detailed pointers. Here’s what I’ve verified on our side:

  • Apps: The Shoplift app has never been installed on this store.
  • Theme:
    • I searched the theme code and found no occurrences of shoplift, gravity, gravity-font-faces, or GTStandard anywhere.
    • In Online Store → Themes → Customize → Theme settings → App embeds, there is no “Shop” entry or anything I could toggle.
  • Pixels: In Settings → Customer events (Pixels), there are no Shop or Shoplift pixels configured.
1 Like

Hello, I ended up adding the following JavaScript code to my theme.liquid file as a workaround:

    <script>
      document.addEventListener('DOMContentLoaded', () => {
        const unwantedFonts = ['GTStandard', 'gravity-font-faces', 'shoplift'];
        document.querySelectorAll('style, link').forEach(el => {
          const content = el.outerHTML || '';
          if (unwantedFonts.some(f => content.includes(f))) {
            el.remove();
          }
        });
      });
    </script>

    <script>
      const observer = new MutationObserver(mutations => {
        mutations.forEach(m => {
          m.addedNodes.forEach(node => {
            if (node.nodeType === 1 && node.tagName === 'STYLE') {
              if (node.textContent.includes('GTStandard')) {
                node.remove();
              }
            }
          });
        });
      });
      observer.observe(document.head, { childList: true });
    </script>

After adding it, I checked the Network tab and PageSpeed Insights, and the font wasn’t there anymore.

Though it doesn’t feel like the cleanest solution: it would definitely be better if Shop could avoid importing unused fonts on the storefront…