Quick answer
Gravity Forms 3.1.1 fixes an incorrect current-page URL during new AJAX submissions when the site uses Referrer-Policy: no-referrer. Verify the supported update and compare the page, saved entry, and mapped CRM field. Do not remove a privacy header simply to make an attribution value look populated.
Name the value you are investigating
The browser's current location, the HTTP Referer request header, a saved entry source URL, and a first-touch marketing field can all differ. Write down which field is wrong and what you expected it to contain. A blank HTTP referrer under no-referrer is not itself a defect.
For example, a visitor may land on a campaign page and then submit a contact form elsewhere. A first-touch field might intentionally retain the landing page, while the entry source should identify the submission page. Treating both as the same field can create misleading reports even when the plugin works correctly.
Create a controlled reproduction
Use a staging form with a short, fictional query marker, such as a campaign test label, and no personal information in the URL. Record the page URL before interacting. Confirm whether the form uses the newer AJAX submission path rather than assuming every asynchronous-looking form does.
Capture the document response headers and the submission request in the browser Network panel. Inspect the Referrer-Policy header without changing it. If a CDN and origin set different values, record the effective browser response and investigate the configuration ownership separately.
Compare the record at each boundary
Submit once using a test identity. Locate the saved Gravity Forms entry and inspect the source information and any custom URL fields you mapped. Then inspect the downstream CRM record if the form feeds one. Link the records using IDs and timestamps.
If the saved source is wrong immediately, investigate the form submission path and installed version. If the entry is right but the CRM is wrong, inspect the feed mapping, custom transformations, and any later automation that writes the same property. A core update cannot repair an unrelated mapping overwrite.
URL evidence record
Landing path: record
Submission path: record
Referrer-Policy: record response header
Entry ID: record
Entry source URL: compare
Custom first-touch field: compare to policy
CRM property: compare to its mapping
Verify the fix without changing attribution policy
Update Gravity Forms through the supported channel and retest the same fixture with fresh public assets. Keep the privacy header unchanged during the comparison. Otherwise you will not know whether the behavior changed because of the fix or because you removed the condition that exposed it.
Do not silently change first-touch fields to last-touch values as part of this repair. Those fields answer different reporting questions. Document any separate attribution-policy change and get the reporting owner to review it before historical comparisons are made.
Check navigation and form placements that matter
Repeat the test for a direct visit to the form page and a visit that navigates from a campaign landing page. If the site embeds the form in a popup or on multiple URLs, include those actual placements. Keep the expected source path explicit for each case.
When query strings contain sensitive data on the real site, investigate that design separately. Avoid copying those values into screenshots, analytics events, or support tickets. Diagnostic examples should use fictional markers, and production evidence should be minimized and redacted.
Separate this from submission failures
A correct source URL does not prove that every feed completed. Likewise, a spinning submit button does not prove a referrer-policy problem. Check the saved entry and request outcome before choosing the next diagnostic path. The related AJAX guide covers aborted submissions.
If custom code calls the affected page-URL helper, compare its behavior with the public form flow on staging. Do not patch the global URL value with a hard-coded page address. That can make one landing page pass while misattributing every other placement.
Close with a written field contract
For each relevant URL field, record its meaning, source, overwrite rule, and destination. A short field contract lets marketing and engineering agree on what a successful test means. It also prevents the next tracking plugin from changing the value accidentally.
After deployment, verify a small sample of legitimate submissions through the normal workflow. Record whether the source page and CRM mapping remain consistent, without generating extra advertising conversions. The outcome should be better evidence, not a larger number of events.
Illustrative diagnostic worksheet. Use your own test results.When to bring in help
Ask for WordPress attribution troubleshooting when the entry source is correct but a downstream CRM property is not. Bring a redacted record of each boundary, not a browser history export or an unfiltered log of visitor URLs.
Related troubleshooting
Diagnose an aborted AJAX submission separately.
Helpful references
Gravity Forms 3.1.1 release notes. Referrer-Policy reference.