← Back to Blog
NetSuite to Snowflake: 5 ways compared
CRM & ERP Integration

NetSuite to Snowflake: 5 ways compared

byBruno Galo · Published on 16 Oct 2026

Available inCatalàEnglishEspañolPortuguês

The tool question is really a NetSuite question. Every option reads NetSuite through one of a few doors: SuiteAnalytics Connect, SuiteTalk REST and SuiteQL, legacy SOAP, or SuiteScript-based exports. The door decides the licence you need, how deletes arrive and whether custom records come through.

This article is built from each vendor's own documentation and Oracle's, re-read on 15 October 2026. A disclosure first: we are a Celigo and Stacksync implementation partner and we build custom SuiteQL pipelines. We do not resell Fivetran, Airbyte or Stitch, and we are not an Oracle NetSuite partner.

Short answer. For bulk replication of most NetSuite tables with SuiteAnalytics Connect licensed, Fivetran is the most hands-off; price your high-churn tables first. For an engineering-led team that wants open source or capacity pricing, look at Airbyte, and check which of its two NetSuite connectors you would be on. Stitch is cheapest to start from, but it uses NetSuite's SOAP API, which Oracle disables with 2028.2. Celigo fits curated datasets and flows that write back to NetSuite; it is not a bulk replicator. Custom SuiteQL fits a narrow, well-defined model, and you own deletes, schema changes and monitoring.

How NetSuite lets data out, and why it decides the tool

  1. SuiteAnalytics Connect (ODBC, JDBC, ADO.NET) on the NetSuite2.com data source. Oracle calls it an add-on module, bought through your account manager, not available for NetSuite Small Business accounts. NetSuite2.com is its only data source and applies role-based access control. Fivetran and Airbyte's enterprise connector read through it.
  2. SuiteTalk REST web services, including the SuiteQL query service. Oracle documents a maximum of 100,000 results per SuiteQL query, and points to Connect above that. Collection Paging allows 1,000 results per page on at most 1,000 pages, so one million results only "if you use SuiteAnalytics Connect". Airbyte's Marketplace connector and custom builds use REST.
  3. SOAP web services, the legacy door. Oracle's SOAP removal FAQ says 2025.2 is the last planned SOAP endpoint, that from 2027.1 no new integrations can be built on SOAP, and that with 2028.2 all endpoints are disabled and SOAP-based integrations stop working. Stitch's connector reads through it.
  4. SuiteScript, saved searches and RESTlets, which is how iPaaS tools such as Celigo export curated datasets, including record-event exports.

One authentication note. Oracle says that from 2026.1 newly built integrations should use REST with OAuth 2.0, and that from 2027.1 new integrations must use OAuth 2.0 and cannot use token-based authentication (TBA). Existing integrations keep working. Several setup guides still show TBA, so ask each vendor about OAuth 2.0.

NetSuite to Snowflake: the comparison table

Option NetSuite access Incremental Deletes Custom records Pricing model Extra NetSuite licence
Fivetran, NetSuite SuiteAnalytics connector SuiteAnalytics Connect, NetSuite2.com Only tables with a numeric primary key and a timestamp column; others re-imported in full, twice a day or weekly Compares checksums of table chunks; soft delete in single-key tables, hard delete in composite-key tables Needs role permissions per table; the "any custom tables" wording sits in the NetSuite.com section of the docs Usage-based, monthly active rows (MAR) per connection. List price, 15 Oct 2026: $5 base charge for connections with 1 to 1M MAR; deletes count toward paid MAR Connect add-on
Airbyte, "Oracle NetSuite" (Marketplace) SuiteTalk REST, TBA "Incremental" supported, with a start date and a window in days; cursor field not stated Not documented Not documented List price, 15 Oct 2026: Standard from $20/month with 5 credits, $5 per extra credit; Plus from $189/month with 40 credits. Pro and Enterprise Flex are capacity-based. Core is open source None beyond REST web services
Airbyte, NetSuite enterprise connector SuiteAnalytics Connect (JDBC), NetSuite2.com Full refresh and cursor-based incremental; Airbyte calls it "incubating" Not documented Not documented "Premium connector ... at an additional cost"; its availability table lists Pro and Enterprise Flex Connect add-on
Stitch, NetSuite (v2) SuiteTalk API v2023_1; the setup needs the SOAP Web Services permission; TBA Key-based; custom records incremental only with "Show Last Modified" on, otherwise full table A Deleted table logs deletes, for record types that support it Tables named custrecord_... List price, 15 Oct 2026, US pricing only: Standard from $100/month (5 to 300M rows); Advanced $1,500/month billed annually (100M rows); Premium $3,000/month billed annually (1B rows) None beyond web services; SOAP removal in 2028.2
Celigo integrator.io Saved-search exports, including Delta on date last modified, and real-time record-event exports Delta exports; Celigo's Snowflake example loads a staging table, then merges Not automatic; design it Yes, through a saved search or a real-time export on the record type Endpoints and flows, not data volume; no prices on the page None
Custom SuiteQL pipeline SuiteQL over REST (or Connect over JDBC), then stage, COPY or Snowpipe, MERGE You design it You design it Whatever the role can query Engineering time, hosting, Snowflake compute Connect, if result sets exceed 100,000 rows

Last checked against vendor documentation and pricing pages: 15 October 2026. Connectors change often; check again before you sign.

Two more rows. Stacksync, a partner of ours, describes two-way NetSuite and Snowflake sync and publishes no latency figure or price on its integration page. Snowflake Openflow lists 26 connectors, and NetSuite is not one of them (15 October 2026).

Not sure which door your account has open? We'll check licences, roles and volumes in thirty minutes: book a call.

Fivetran: the hands-off option, if Connect is licensed

Fits: broad replication of the standard NetSuite data model, by a small data team.

Watch out, all from Fivetran's documentation:

  • SuiteAnalytics Connect has to be enabled in your account, and Oracle sells it separately.
  • Tables without a numeric primary key and a timestamp column are re-imported in full: twice a day if the import takes 20 seconds to 60 minutes, once a week if it takes longer.
  • Some auto-calculated columns do not update last_modified_date, so incremental syncs miss those changes until a re-sync.
  • Saved searches are not synced natively; the documented workaround is emailed results synced through the Email connector. Datasets can be exported as SuiteQL text.
  • Cost scales with MAR, and since 1 January 2026 deletes count toward paid MAR.
  • Fivetran recommends NetSuite2.com, where its setup guide supports TBA and OAuth 2.0.

Airbyte: two connectors, two different things

The Marketplace connector reads through REST, so it needs no Connect licence. Its docs list the support level as "Marketplace", show a "Low" sync success rate (as displayed on 15 October 2026), and state that it is bound by NetSuite's concurrency limit per integration. The changelog shows why to watch versions. Version 0.1.28 (17 August 2026) fixed incremental sync "permanently dropping records modified between the sync time and account-local midnight". Version 0.1.29 (15 September 2026) fails the sync when more than 50% of records are silently skipped because of NetSuite workflow locks. Pin the version. Deletes and custom records are not documented, so do not assume either.

The enterprise connector reads Connect on NetSuite2.com, is labelled incubating, is a premium connector at additional cost, and is listed for Pro and Enterprise Flex only.

Self-hosting Airbyte is free software, not free operations: managed CDC versus self-hosted Debezium prices the people-time, and build versus buy for a Heroku Connect replacement adds Airbyte context.

Stitch: cheapest to start, but on SOAP

Fits: small volume, simple table set.

Watch out: Stitch's NetSuite (v2) integration uses SuiteTalk API v2023_1 and requires the SOAP Web Services permission. In Oracle's endpoint table, 2023.1 is "available without support" from 2026.1 and disabled with 2028.2, when all SOAP endpoints go. We found no published REST or OAuth 2.0 migration plan for the connector, so ask Stitch for one in writing. Custom records load in full unless "Show Last Modified" is enabled on the record type. The Deleted table logs deletes for supported record types. Its documentation shows TBA only.

Celigo: curated datasets and two-way flows, not bulk replication

Fits: you already run Celigo, finance wants specific saved-search datasets in Snowflake, or data must go back into NetSuite.

How it works: Celigo's Delta export picks up records whose date field, such as date last modified, is later than the flow's last run. Real-time exports deploy a user event script on the record type. Celigo's own NetSuite to Snowflake example uses two flows: the first loads changes into a staging table, the second merges them into production and clears staging. Pricing by endpoints and flows suits a steady curated feed, not hundreds of raw tables.

Watch out: deletes are not automatic, so design for them, and a Delta export re-exports any record that changes again, which is why the merge matters. We are a Celigo partner, so weigh that. The Celigo page says what we do; iPaaS, point-to-point or middleware says where an iPaaS fits.

Custom SuiteQL: when you need exactly this model and nothing else

The pattern is SuiteQL over REST (POST /services/rest/query/v1/suiteql with the Prefer: transient header and limit and offset paging), files in a Snowflake stage, COPY or Snowpipe, then MERGE.

The limits are Oracle's. Without Connect, each query returns at most 100,000 results, so page by id or date windows. Concurrency limits apply, and new integrations should use OAuth 2.0. You own watermarking on lastmodifieddate, delete capture, schema drift, retries and alerting. It fits a narrow finance model, network or residency constraints, or volumes where per-row pricing does not. It is not a default.

Problems no tool solves for you

  • Deletes and voids. A voided transaction and a deleted one differ, and a cursor-based sync can miss a hard delete. Test both.
  • Calculated fields. Values that change without touching the modified date, such as amount remaining, go stale. Fivetran says so; assume it for any incremental method.
  • Lines and headers. Posting and non-posting lines and multi-book accounting decide whether totals match NetSuite reports.
  • Multi-subsidiary and currency. Rates, hierarchy and eliminations are modelling work: see one chart of accounts across subsidiaries and currencies.
  • Custom fields added later. Who notices the schema change?
  • Saved searches as business logic. Finance's definitions live there, not in raw tables. Rebuild them as SQL models.
  • Concurrency. ELT jobs share NetSuite's concurrency allowance with your order flows. Keep heavy loads off order peaks.
  • Reconciliation. Run a monthly control: trial balance and AR ageing in Snowflake against NetSuite.

Going the other way: Snowflake back to NetSuite or Salesforce

Fivetran signed an agreement to acquire Census, a reverse ETL company, on 1 May 2025; its reverse ETL product is Activations. Its NetSuite destination supports custom records but, per its docs, cannot create fields. It authenticates with TBA, and the page quotes about 500 records per minute on the base plan. Stacksync describes two-way sync, with object permissions deciding the writable fields. Celigo's template page for NetSuite and Snowflake describes customer and item flows from NetSuite to Snowflake; we found no documented Snowflake to NetSuite template, so treat that direction as something to design and test.

Writing into NetSuite means validation, governance limits and idempotency. For the CRM side, see Salesforce to Snowflake without Heroku Connect.

What it really costs

No invented figures here, only the cost lines:

  • the SuiteAnalytics Connect add-on, quoted by your NetSuite account manager;
  • the tool subscription (MAR, credits, rows or flows);
  • Snowflake compute for loads and MERGEs;
  • engineering time for modelling, reconciliation and monitoring.

Annual cost = NetSuite add-ons + tool + Snowflake compute + (hours per month × loaded hourly rate × 12). Price your two highest-churn tables first: transaction lines and system notes.

Decision guide

  1. Is SuiteAnalytics Connect licensed, or will you buy it? If not, Fivetran and Airbyte's enterprise connector are out.
  2. Ten curated tables or two hundred raw ones? Curated points to Celigo or custom; raw to an ELT tool.
  3. Must data go back into NetSuite? Look at Activations, Celigo or Stacksync.
  4. Who owns failures? No data engineer means a managed tool or a partner.
  5. Hourly or daily freshness? Check the re-import schedule of every table that matters.
  6. Do custom records matter? Test one of yours in a trial.
  7. How many transaction lines a month? Price that table against MAR, credits or rows.
  8. Already on Celigo? Then ask what a curated feed adds.

FAQ

Census vs Fivetran vs Airbyte vs Stitch for NetSuite to Snowflake: which should I use?

They do different jobs. Fivetran, Airbyte and Stitch load NetSuite into Snowflake. Census, now part of Fivetran's Activations product, sends modelled data back out. For loading, choose by NetSuite access method: Connect-based Fivetran for hands-off breadth, Airbyte for open source or capacity pricing, Stitch for low cost while its SOAP-based connector lasts.

Do I need SuiteAnalytics Connect to get NetSuite data into Snowflake?

Not always. Fivetran's connector and Airbyte's enterprise connector need it. Airbyte's REST connector, Stitch, Celigo and custom SuiteQL do not. Connect is a separately licensed add-on, and without it SuiteQL over REST returns at most 100,000 results per query.

Does Fivetran capture deletes from NetSuite?

Per its docs, yes. It compares checksums of table chunks, soft-deletes rows in single-key tables and hard-deletes rows in composite-key tables. Calculated fields that do not update the modified date can still go stale between re-syncs.

Will Stitch's NetSuite integration stop working?

It uses SuiteTalk API v2023_1, which is SOAP. Oracle disables all SOAP endpoints with the 2028.2 release. Unless Stitch moves the connector to REST before then, it will stop. We found no published plan, so ask Stitch.

Can Celigo load NetSuite data into Snowflake?

Yes. Celigo exports NetSuite records through saved searches or real-time events and writes them to Snowflake, and its own example uses a staging table and a merge. It suits curated datasets and two-way flows better than bulk replication of every table.

Can I build NetSuite to Snowflake myself with SuiteQL?

Yes: query SuiteQL over REST, stage files and merge into Snowflake. You own incremental logic, deletes, schema changes and monitoring, and each query is capped at 100,000 results without Connect.

How fresh can NetSuite data in Snowflake be?

It depends on plan, table and method, and vendors publish few numbers. Fivetran says tables that need a full re-import sync twice a day or weekly. Event-driven exports, such as Celigo real-time exports, can be closer to the change for specific records. Test the tables you care about.

How do I get Snowflake data back into NetSuite?

With reverse ETL or two-way sync: Fivetran Activations, Celigo flows you design, or Stacksync. Map to existing NetSuite fields; Activations cannot create fields.

Sources

All accessed 15 October 2026.

Tell us which NetSuite data you need in Snowflake

We'll tell you which door to use and what it will cost to run, even if the answer is a tool we don't implement. Book a call, or see our Celigo and Stacksync pages and the wider integrations list. For what RevOps does with the data afterwards, see from reporting to forecasting and pipeline numbers finance will accept.

Comments

No comments yet.

Leave a comment

Your comment will be reviewed before publishing.

An unhandled error has occurred. Reload 🗙