8.1 KiB
Google Ads consultation-form conversion: Astro implementation handoff
Recorded: 2026-10-08
Repository branch: faithful-astro-migration
Status: Configuration documented only. NOT approved for production installation or activation.
This document preserves the conversion action configured in the AIA Google Ads
organization account for the future Astro consultation/ABA-therapy landing pages.
It is a handoff to the site-migration and landing-page implementation work, not
authorization to install advertising tags. Follow the repository's
AGENTS.md/form-implementation constraints. As of this document, existing
migration forms are intentionally static; do not silently wire them to a backend
or add tracking while working on the visual migration.
Google Ads configuration (verified in account UI)
| Field | Value |
|---|---|
| Google Ads customer/account | 515-940-4739 |
| Conversion action | `AIA |
| Goal/category | Submit lead form |
| Source | Website, manual event |
| Optimization | Primary; account-default goal (alongside Phone call lead) |
| Value | USD $1, fixed nominal reporting value (not actual revenue) |
| Count | One conversion per ad interaction |
| Click-through conversion window | 90 days |
| Engaged-view / view-through windows | 3 days / 1 day |
| Attribution | Data-driven |
| Enhanced conversions | Not configured; do not enable |
| Google tag setup | Not installed/verified for this new account |
| Conversion type ID (Google Ads UI reference only) | 7830657062 |
Identifiers copied from the Google Ads “See event snippet” dialog:
- Google Ads destination / tag ID:
AW-18494479353 - Conversion label:
MzxbCKaw-ZUdEPm37fJE send_tovalue:AW-18494479353/MzxbCKaw-ZUdEPm37fJE
The event snippet displayed in Google Ads is:
<!-- REFERENCE ONLY. DO NOT DEPLOY WITHOUT PRIVACY APPROVAL. -->
<script>
gtag('event', 'conversion', {
'send_to': 'AW-18494479353/MzxbCKaw-ZUdEPm37fJE'
});
</script>
The AW- destination ID and conversion label are not secrets. Their
publication in source documentation does not imply permission to transmit data
to Google.
Intended conversion semantics
One conversion represents one consultation/ABA-therapy inquiry whose form submission is accepted successfully by the approved API, not a page visit, form start, validation attempt, button click, or failed request.
The Google Ads dialog offered Page load and Click snippet options. The
Page load option was used to retrieve the event syntax, not as a mandate
to fire on arbitrary page loads. For the Astro/API flow, prefer triggering
explicitly after the API returns a verified success response, provided the
privacy review has approved the entire data flow.
Avoid a generic /thank-you page-load conversion: direct visits, refreshes,
or failed/subsequently redirected submissions can create false conversions
unless access and deduplication are robustly controlled. If confirmation-page
measurement is selected later, document and test how successful submissions
are authenticated and repeated visits are prevented from counting again.
Integration requirements — gated, not yet authorized
- Privacy/HIPAA and Google Ads policy approval comes first. Review with
AIA's responsible privacy/compliance team whether any Google tag may load
on the relevant pages, including the confirmation page. A health-service URL
and request metadata can disclose sensitive context even when no form fields
are sent. Review URL/path/query string, referrer, IP/device information,
cookies, network requests, automatic collection, consent, and applicable
Google terms/policies. No tag loading at all until that review is
completed and explicitly approved; a nominally sanitized
gtagevent is not itself evidence of HIPAA compliance. - Keep enhanced conversions and customer-data features off. Do not send
names, emails, phone numbers, diagnoses, dates of birth, form contents,
hashed identifiers,
user_data, or any patient-related values to Google. Do not import sensitive customer lists or enable remarketing/health-audience personalization. Don't append PII/PHI to redirect URLs, analytics events, or advertising parameters. - Do not add the base Google tag globally to
src/layoutsor shared head scripts as part of the ordinary site migration. If approved, provide the minimum audited, route-specific implementation with explicit policy controls. The Google Ads event requires a correctly initialized Google tag (or a separately approved GTM implementation); the event snippet alone cannot measure a conversion. - Fire only after confirmed API success. Use the real form endpoint's documented response contract, not a presumed HTTP 200 or a click handler. Fail closed on network error, invalid/partial responses, validation failure, or spam rejection. Guard against duplicate calls from double-clicks, retries, navigation, and refreshes.
- Keep the event minimal. Once explicitly approved and initialized, the
only required conversion-event field in the recorded snippet is
send_to. Do not addvalue,currency,transaction_id, URL parameters, or custom data without separate measurement/privacy review. - Test safely. First unit/integration-test form-success logic using a
mocked
gtagand synthetic submissions. Test zero events on errors and exactly one on verified success; inspect final URLs and outgoing requests. Any real Google-network testing is itself tag deployment and requires the same privacy approval. Verify the event in Google Ads/Tag diagnostics after approval and deployment. - Release gate. Do not enable the paused campaign until the landing pages are production-ready, successful forms are verified end to end, conversion measurement is tested and approved, the healthcare/call-asset terms issue is resolved, and the advertising-policy review is complete.
Illustrative invocation — not production-ready code
// Documentation-only. Run ONLY inside a privacy-approved implementation,
// after the approved API's actual success condition has been verified and
// the approved Google tag is initialized. Add submission-level deduplication.
gtag('event', 'conversion', {
send_to: 'AW-18494479353/MzxbCKaw-ZUdEPm37fJE',
});
Do not paste that example into a generic submit event handler or a
shared page layout: doing so before the asynchronous API response succeeds
would count attempted or failed inquiries.
Related campaign and implementation notes
- The Search campaign in Google Ads account
515-940-4739is intended to remain paused during the Astro/Contabo migration and privacy audit. - The other account-default Primary goal is
Phone call lead, presently anAI-qualified call leadsaction with a 60-second qualifying duration andCount = One. Its Call and Messaging Ads Terms/HIPAA-exclusion question is a separate launch blocker. - The standalone advertising landing pages and associated form API work may have their own repository or implementation handoff. Reconcile this document with that source before making changes; do not assume the migration repo's static forms already implement those endpoints.
- For privacy, keep identifiers limited to the public Ads destination ID and conversion label; no API credentials, patient examples, or submitted lead data belong in this documentation.
Implementation checklist
- Create the Google Ads manual Website conversion action and record IDs.
- Configure Primary, One, $1, data-driven attribution; enhanced conversions off.
- Approve the exact third-party tag/data-flow design through AIA privacy review.
- Confirm form API success contract and documented submission deduplication.
- Implement a strictly gated, audited event only on verified form success.
- Verify outgoing network payloads and URLs contain no sensitive information.
- Complete approved end-to-end tracking tests and inspect Google Ads diagnostics.
- Confirm Google call-assets terms/HIPAA exclusion and other launch gates.
- Unpause campaign only after written go-live approval.