Wondering what a new roof costs? Get a real price range online in about ninety seconds — no salesperson, no email wall. Call (240) 880-2108 · office@udroofing.com
United Developers

Cookie Policy

How we use cookies and similar technologies — in plain English.

Get a Free Inspection →(240) 880-2108
Reconciled against the code on 10 August 2026, not attorney-reviewed. Every tool and identifier named below was read out of this site's own scripts and config, so the descriptions match what actually runs. Have counsel review the wording before relying on it as a legal notice.

Last updated 10 August 2026.

This page describes the cookies and similar technologies actually running on udroofing.com, what each one is for, and how to change your mind. It is written against the code on this site rather than from a template — every tool named below is one you can see loading in your browser's network tab.

The short version

  • Nothing that tracks you loads until you choose. Advertising and analytics storage start in a denied state on every page load.
  • "Essential only" means exactly that: no analytics, no advertising, no session recording.
  • If your browser sends a Global Privacy Control signal, we treat that as "essential only" automatically and never show you the banner.
  • You can reopen the choice at any time — see "Changing your mind" at the bottom.

How consent is stored

Your choice is kept in your own browser in localStorage under the key ud_consent_v1, with a value of either all or essential. It is not a cookie, it is not sent to our servers, and clearing your browser storage clears it. Until that key exists — and unless GPC is set — the site runs in the denied state described above.

Strictly necessary

These are needed for the site to work and are not optional. They carry no advertising identifier.

  • ud_consent_v1 (browser storage) — remembers your cookie choice so you are not asked on every page.
  • Session and security storage — set when you sign in to the staff app or open a customer portal link, to keep you signed in and to protect the form against abuse.
  • Form state — short-lived storage that keeps what you typed if a multi-step form reloads, and first-touch attribution so a quote you started on one page is not lost when you finish it on another.

Analytics — only after you accept

  • Google Analytics 4 (G-HZM7JB92VZ). Cookies typically named _ga and _ga_<container>. We enable IP anonymisation on this property. Used to see which pages people read and where visits come from.
  • PostHog (us.i.posthog.com), cookie typically ph_<key>_posthog. Product analytics for the site and the staff app — which screens are used and where people get stuck. Our loader does not call PostHog's initialise function at all until consent is granted, so before that no PostHog cookie is written.

Advertising — only after you accept

  • Google Ads (AW-18193949438), including the conversion linker, typically _gcl_*. Lets us see which ads produce enquiries and stop paying for the ones that do not.
  • Meta Pixel (27442870905376992), typically _fbp. Same purpose for Facebook and Instagram. Until you accept, the pixel is held in a revoked state and queues rather than sends.

We do not sell your personal information, and we do not use these tools to build profiles about your health, finances or anything unrelated to roofing work.

Google Consent Mode v2

This site implements Consent Mode v2. On every page, before any Google tag runs, we set ad_storage, ad_user_data, ad_personalization and analytics_storage to denied. Choosing "Accept all" sends a single update moving those four to granted. Choosing "Essential only" leaves them denied for the whole visit.

What is fetched before you choose

Being precise, because "only after you accept" is true about cookies and not the whole picture. Two third-party files are fetched on first paint, before you touch the banner: Google's tag (googletagmanager.com/gtag/js) and Meta's pixel (connect.facebook.net/en_US/fbevents.js). This is how Consent Mode v2 and Meta's equivalent are designed to work — the tags load with consent denied, store nothing, set no cookies, and queue anything they would have sent until you decide. If you choose "Essential only" they stay denied for the whole visit and never write anything.

What this does mean: your browser has made a request to Google and to Meta, and a request carries your IP address and your browser's user-agent string to whoever answers it. That happens whichever button you press, and it happens before you press one. We would rather write that down than let "only after you accept" imply more than it delivers.

Embedded content

Some pages embed third-party content — a map showing our Bethesda office, fonts, and video. Those providers can set their own cookies when the embed loads, under their own policies, not ours. Our office map loads only when it actually comes into view as you scroll — nothing is requested from Google Maps before that, so simply opening a page does not contact them. If you never scroll to the footer, no map request is made at all.

Changing your mind

Three ways, all of them real:

  • Clear cookies and site data for udroofing.com in your browser settings. The banner returns on your next visit.
  • Turn on Global Privacy Control in your browser or extension. We honour it as "essential only".
  • Opt out at the source: Google Analytics opt-out, Google My Ad Center, and your Facebook or Instagram ad preferences.

Declining or withdrawing consent does not affect your ability to get an estimate, book an inspection, or use anything on this site. It only stops the measurement.

Questions

Email office@udroofing.com or call (240) 880-2108. What we do with the information itself — not just the cookies — is in our Privacy Policy. Text-message consent is covered separately in our SMS Terms.

Your roof won't fix itself. We will.

Free inspection, typically within 24 hours. Storm damage documented. On an approved claim, your deductible is typically your out-of-pocket cost. Your policy and carrier determine coverage.

Call (240) 880-2108See My Roof Price