CONNECTIONS / FTP / FTP to Google OCI
Your FTP drops, wired to Google Ads offline conversion import.
Signals reads your FTP drops through read-only credentials scoped to the SFTP path you name, then reconciles closed-won revenue to the Google Ads click through GCLID so Google Ads sees offline conversions without an export.
- ● ftp → google.oci :: live
- > read closed_deals rows=16,537
- hash sha256(email,phone) consent=filtered
- route google deliver
- ✓ delivered · 13,064 matched
WHAT THIS ENABLES
FTP to Google Offline Conversions
FTP to Google Offline Conversions: your FTP drops, hashed and consent-checked, feed Google Ads as Signals reconciles closed-won revenue to the Google Ads click through GCLID each time a new file lands.
- Signals reconciles closed-won revenue to the Google Ads click through GCLID, reading your FTP drops each time a new file lands.
- A clean line from click to closed revenue, with no export step out of your FTP drops.
The click, the conversion, and the credit.
The conversion happens off Google, away from any pixel. Here is how FTP closes the loop.
Built for the teams that own the number.
Teams exporting nightly to SFTP who need Smart Bidding trained on booked revenue instead of a mid-funnel proxy out of FTP drops.
From kickoff to verified events.
-
Connect
Read-only credentials scoped to the SFTP path you name, mapped to Google Ads' Offline Conversion Import (Google Ads API) and tuned for GCLID coverage.
-
Map
Columns from your FTP drops align to Google Ads' Offline Conversion Import (Google Ads API) in the visual mapper, hashed as the file lands and checked for GCLID coverage.
-
Deliver
Each time a new file lands, Signals reads your FTP drops and reconciles closed-won revenue to the Google Ads click through GCLID, processes only the newly dropped file, with GCLID coverage watched in the debugger.
What changes when the CSV goes away.
| Capability | Manual CSV upload | Datahash |
|---|---|---|
| Reporting | Offline sales sit in a separate export, reconciled by hand. | Revenue counted in the same OCI reporting as web conversions. |
| Deduplication | A re-uploaded file risks counting the same conversion twice. | Deduped delivery, so a resent record never counts as a second conversion. |
| Match visibility | Match quality is a guess until the numbers look off. | Match rate reported per upload, tied to the source event set that produced it. |
| Effort and latency | An analyst exports and uploads on a manual cadence. | Server-side and automatic the moment FTP records the event. |
What OCI actually receives.
- ● signals :: event payload
- > POST /offline_conversion_import source=ftp.closed_deals
- gclid "Cj0KCQjw…" · conversion_action "closed_won"
- conversion_date_time "2026-07-15T11:46:41"
- conversion_value 16088 · currency_code USD
- ✓ accepted · batch=hourly
Adjacent moves on the same stack.
from FTP
FTP to Google Store Sales
FTP to Google Store Sales: your FTP drops, hashed and consent-checked, feed Google Ads as…
Learn morefrom FTP
FTP to Meta Offline CAPI
FTP to Meta Offline CAPI: your FTP drops, hashed and consent-checked, feed Meta as Signals…
Learn moresame use case
ActiveCampaign to Google OCI
ActiveCampaign to Google Offline Conversions: Signals reads your ActiveCampaign contacts…
Learn moregeneric
Google Offline Conversion Import
Datahash automates GCLID-based OCI uploads to Google Ads so click-based offline conversions…
Learn moreAsked on almost every call.
How often does the FTP Google OCI sync run?
You set the cadence, from near-real-time to a nightly FTP sync of your FTP drops into Google Ads. Since Signals processes only the newly dropped file, Smart Bidding trained on booked revenue instead of a mid-funnel proxy keeps pace and teams exporting nightly to SFTP watch GCLID coverage. One scoped connection sets it up, cadence adjustable later.
What match rate should a FTP-sourced Google OCI batch expect?
Match rate follows identifier coverage in your FTP drops, which teams exporting nightly to SFTP control, not FTP itself. A record with a current hashed email or phone matches for Google Ads; one missing both cannot. First-run feedback from Offline Conversion Import (Google Ads API) pinpoints GCLID coverage, the number teams exporting nightly to SFTP tune against.
NEXT STEP