Jump to a popular page, or start typing.

    CONNECTIONS / FTP / FTP to Google Store Sales

    Your FTP drops, wired to Google Store Sales matching.

    Signals reads your FTP drops through read-only credentials scoped to the SFTP path you name, then matches in-person transactions to Google accounts as store-sales conversions so Google Ads sees offline conversions without an export.

    ftp -> google-store-sales :: live

    1. ● ftp → google.sales :: live
    2. > read closed_deals rows=48,460
    3. hash sha256(email,phone) consent=filtered
    4. route google deliver
    5. ✓ delivered · 39,737 matched

    WHAT THIS ENABLES

    FTP to Google Store Sales

    FTP to Google Store Sales: your FTP drops, hashed and consent-checked, feed Google Ads as Signals matches in-person transactions to Google accounts as store-sales conversions each time a new file lands.

    • Signals matches in-person transactions to Google accounts as store-sales conversions, reading your FTP drops each time a new file lands.
    • Store visits reconciled to campaign spend, with no export step out of your FTP drops.
    WHAT FLOWS WHERE

    The click, the conversion, and the credit.

    The conversion happens off Google, away from any pixel. Here is how FTP closes the loop.

    Google credits the campaign that sourced the conversion conversion happens off-platform Ad click on Google F File drop sync recorded in FTP S Signals hash · dedupe Store Sales Direct API delivered · credited
    WHO THIS IS FOR

    Built for the teams that own the number.

    Omnichannel retailers reconciling point-of-sale against Google spend, working out of FTP and SFTP drop folders.

    Teams exporting nightly to SFTP who need counter and showroom revenue inside the same ROAS view as online orders out of FTP drops.

    HOW DATAHASH SETS IT UP

    From kickoff to verified events.

    1. Connect

      Read-only credentials scoped to the SFTP path you name, mapped to Google Ads' Store Sales Direct API and tuned for the store-sales match rate.

    2. Map

      Columns from your FTP drops align to Google Ads' Store Sales Direct API in the visual mapper, hashed as the file lands and checked for the store-sales match rate.

    3. Deliver

      Each time a new file lands, Signals reads your FTP drops and matches in-person transactions to Google accounts as store-sales conversions, processes only the newly dropped file, with the store-sales match rate watched in the debugger.

    WHAT YOU GET

    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 Store Sales 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.
    ON THE WIRE

    What Store Sales actually receives.

    signals :: ftp.google-store-sales :: wire

    1. ● signals :: store sales upload
    2. > POST /offline_user_data_jobs source=ftp.closed_deals
    3. transaction_time 2026-07-22T20:20:44 · transaction_amount_micros 45943000000
    4. currency_code AED
    5. hashed_email sha256 "6d2e91…" · hashed_last_name sha256 "cc410a…"
    6. ✓ accepted match=82%
    FAQ

    Asked on almost every call.

    How often does the FTP Google Store Sales 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, counter and showroom revenue inside the same ROAS view as online orders keeps pace and teams exporting nightly to SFTP watch the store-sales match rate. One scoped connection sets it up, cadence adjustable later.

    What match rate should a FTP-sourced Google Store Sales 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 Store Sales Direct API pinpoints the store-sales match rate, the number teams exporting nightly to SFTP tune against.

    NEXT STEP

    FTP to Google Store Sales, in production this week.