Browse documentation

Delivering results to your warehouse

Push a published run's segment-labeled results into your own data platform via Delta Share, cloud storage, or sFTP.

Warehouse delivery is the production route for activation: Neuralift pushes a published run’s segment-labeled results directly into your data platform, where you join them to your customer table and feed every downstream system. An admin configures the destination once for the organization; after that, when a published run is ready to go out, delivery is run with your Neuralift team, and you monitor its status from the run’s Exports tab.

Before you begin

Choose your warehouse

Delivery is configured by warehouse: you pick where results should land, and the delivery mechanism follows. Databricks and Snowflake receive results over Delta Sharing, the open protocol for secure data sharing developed by Databricks (branded OpenSharing in Databricks’ documentation) — the same governed mechanism as inbound Databricks connections, running in the opposite direction. BigQuery and Redshift receive Parquet files pushed to cloud storage you control — and on Google Cloud, the files are also registered as queryable BigQuery tables.

WarehouseHow results arrive
DatabricksA shared table readable from your Unity Catalog metastore
SnowflakeA share you register with a one-time activation URL
BigQueryParquet files pushed to your GCS bucket, registered as BigLake tables in your dataset
Amazon Redshift (Preview)Parquet files pushed to your S3 bucket, ready to load with COPY; see Release stages

A separate sFTP delivery gateway (Preview) is the universal fallback when none of the above fit; see sFTP below.

What to provision in your own warehouse or cloud account — service users, buckets, policies, and the SQL to mount or register what Neuralift shares — lives with each warehouse’s connection page: Databricks, Snowflake, BigQuery, and Redshift.

Note. Which warehouses appear in the picker depends on what’s enabled for your organization — Databricks, Snowflake, and BigQuery delivery are on by default; Redshift and sFTP are enabled on request.

Configure delivery

Delivery is configured once per organization, in Settings → Data Connections, under the Share your results panel. Click Configure delivery, choose your warehouse under Deliver results to — a short explainer under the picker confirms how results will arrive — then follow the section below for your warehouse.

Databricks

  1. Under Deliver results to, choose Databricks.
  2. Enter your Customer Databricks metastore ID, found in your Databricks workspace under Catalog → gear icon → Metastore details, or by running SELECT current_metastore(); in a SQL editor.
  3. Click Configure delivery.

The panel shows a setup spinner while the share is provisioned, then an Active badge with the share and recipient names. On your side, the share appears under Catalog → Delta Sharing → Shared with me; mount it as a catalog following Receiving results in Databricks — the collapsible Databricks catalog setup block on the setup form and the delivery card shows the same SQL with your share’s real name filled in.

Note. The recipient is bound to the metastore ID you entered, and it can’t be edited afterwards. To move delivery to a different metastore, use Reset & re-provision on the panel.

Snowflake

  1. Under Deliver results to, choose Snowflake. The collapsible Snowflake catalog setup block on the form previews the registration SQL with your share’s real name filled in.
  2. Click Configure delivery. A Delta Share activation URL appears in a dialog.
  3. Click Copy URL and store it securely, then use it to register the share in Snowflake as a catalog integration with a linked database — the exact SQL is in Receiving results in Snowflake, and stays available in the setup block on the delivery card, which also shows the bearer token’s expiry date once active. (On another open-protocol reader, follow the standard Delta Sharing consumer flow for your platform.)

Warning. The activation URL is shown exactly once and cannot be retrieved later. If it’s lost, remove the delivery configuration and configure it again to generate a new one.

BigQuery

  1. Under Deliver results to, choose BigQuery.
  2. Fill in the Storage destination (gs://<bucket>/<prefix>), BigQuery project ID, BigQuery dataset, Region (currently US locations only; bucket, dataset, and connection must all share it), and BigLake connection name.
  3. The form’s collapsible GCP setup commands block shows the full setup script with your values filled in, updating live as you type. Run steps 1–3 of it in your GCP project before saving, then click Configure delivery.
  4. Saving creates your organization’s dedicated delivery service account and the card shows Action required — finish GCP setup: run the step-4 grants (now showing the account’s real email), make the console-only BigQuery Connection Admin grant on the BigLake connection, and click Verify & activate. The full sequence is in Receiving results in BigQuery.

Once verified, the card shows Active and each delivered run lands as a BigLake table named sld_<run_id> in your dataset.

Amazon Redshift (Preview)

  1. Under Deliver results to, choose Amazon Redshift.
  2. Enter the Storage destination: an S3 URI such as s3://<bucket>/<prefix>.
  3. Click Configure delivery. The panel shows a bucket policy JSON statement — have whoever administers your AWS account add it to the bucket’s policy. It grants Neuralift’s dedicated delivery role the bucket-metadata and list access, plus the object write, delete, and multipart-upload operations it needs to manage deliveries under the configured prefix. Deliveries will fail until the policy is in place. Full detail, including loading delivered files into Redshift with COPY, is in Receiving results in Redshift.

sFTP (Preview)

sFTP has its own sFTP delivery panel below the main configuration:

  1. Click Set up sFTP delivery.
  2. Paste your public key into the Customer SSH public key field (for example ssh-ed25519 AAAA... user@host). Only the public half of the key pair is submitted; no password is stored.
  3. Neuralift provisions a private gateway. When the panel shows Active, it lists the Host, gateway User, and your key’s fingerprint.

Connect with your matching private key using any sFTP client. Delivered results appear under the outbound/ folder. Use Update key to rotate to a new key at any time.

Deliver a run’s results

Once the destination is configured, delivery itself is run with your Neuralift team: when a published run is ready, they push its results to the configured share or storage destination. You follow along from the run’s Exports tab: open the published use case, select Exports in the sidebar, and watch the Result delivery section.

The status shows Sharing… or Delivering… while the push runs, then a Shared (Delta Share) or Delivered badge with the delivery date. You should now see the run’s segment-labeled results on your side: a queryable shared table in your metastore, Parquet files at your storage destination, or files in your sFTP outbound/ folder.

To push again (for example after a change on your side), ask your Neuralift team to re-share or re-deliver. For Delta Share, a run can also be unshared, which removes its data from the share so your platform can no longer read it.

What you receive

Delivered results are segment-labeled rows keyed by the same ID column as your prepared dataset, with each customer’s segment assignment, ready to join straight back to your customer table.

Troubleshooting

  • The Exports tab says “Configure delivery in Org Settings to push results to your warehouse.” No active delivery configuration exists yet; an admin needs to complete the setup above.
  • It says “Publish this run before delivering results.” Delivery only works on published runs; see Publishing.
  • A Failed badge appears. For cloud-storage push, first confirm the grants on your side are in place — the S3 bucket policy, or the GCP grants from the setup block — then ask your Neuralift team to retry the delivery. If it keeps failing, contact support@neuralift.ai.
  • You can’t remove the Delta Share configuration. Shared runs are still using it. Ask your Neuralift team to unshare them first, then remove the configuration.
  • You removed a cloud-storage configuration but files are still in the bucket. Removing the configuration stops future deliveries; it doesn’t recall files already delivered. Delete them from the bucket yourself if needed.

Next steps

  • Join the delivered labels to your customer table, then compare notes with the segment landscape.
  • For quick, one-off audience files alongside delivery, see CSV exports.