Meet the Leader

Kyle Castor on value creation in basis points

Kyle Castor, Founder & Principal Architect  •  61 seconds  •  Captions  •  AI-rendered presenter from the studio portrait

Transcript

00:00To private equity sponsors and operating partners here in Las Vegas: your post-acquisition value creation shouldn't be trapped in forty-page slide decks.

00:11At DataOngoing, we measure our work strictly in basis points of EBITDA. Two hours of executive input returns hundreds of automated hours, proven in our 100x time ledger.

00:24First, a 48 to 72-hour AI technology diligence read to price technical debt before wiring capital. Second, compressing your 21-day multi-entity close down to 3. Third, automated floor-to-ledger data ingestion straight into NetSuite.

00:44We ship working code in 14-day sprints. If it does not run in production, the milestone is not billed. Visit DataOngoing.ai to schedule a private advisory session.

  1. How we work →
  2. Read the 100x ledger →
  3. The productized offers →
  4. The Basis-Point Sprint →

Every figure in the brief is published on this site with its source class; the chapter links go to those pages.

Home / B2B Inventory Ads
B2B Inventory Ads

NetSuite Inventory Driving Five Ad Channels, With the Return Read in Gross Margin

Most B2B distributors and manufacturers advertise from a product export: the ad account does not know a SKU sold out this morning, that a lot has sat for 118 days, or what the order actually earned after landed cost. DataOngoing installs the inventory, creative, checkout and attribution layers inside NetSuite as one SDF bundle, so the feed reads Available-to-Promise every 15 minutes, the creative is rendered from the SKU record, the order is a NetSuite Sales Order or Cash Sale with the lot reserved, and the return is incremental gross profit above a 90-day baseline.
Basis-point leverGross margin on advertised inventory
Your time3 hourscatalog sign-off, ad account access, launch review

NetSuite Available-to-Promise, lot age and price tiers drive five ad channels directly: stocked-out SKUs stop spending on the next 15-minute cycle, lots over 90 days move to a clearance variant, and every click-attributed order is read against landed cost and a Day-0 baseline inside the ledger. See the 100x ledger for the rows behind this lever.

Why B2B ad spend and the warehouse disagree

An agency optimizes toward the conversions a platform pixel reports. The pixel does not see Available-to-Promise, FIFO lot age, wholesale price tiers or landed cost, so the account keeps buying clicks to SKUs that stocked out, ignores the pallets that are about to be written down, and reports a return gross of the cost of goods. The CFO sees ad spend in the ledger and a conversion report in a slide deck, and the two never reconcile.

What the bundle installs in NetSuite

LayerNetSuite objectWhat it does
Inventory feed governor<code>do_mr_inventory_omnichannel_sync.js</code> (Map/Reduce)Reads <code>quantityavailable</code>, lot age and price tiers every 15 minutes and on Item Fulfillment and Item Receipt events; pauses a SKU below its safety-stock floor and switches lots over 90 days to a clearance variant across Google, Facebook, Instagram, TikTok and YouTube
Feed rules<code>customrecord_do_dm_sku_feed_rule</code>Safety-stock floor, aged-lot threshold, price tier and channel status per item
Video studio<code>customrecord_do_dm_video_ad_asset</code>Renders the SKU photo in the File Cabinet into 9:16, 1:1 and 16:9 motion variants with a three-beat script and Google RSA copy checked to 30 and 90 characters
B2B checkout<code>do_rl_b2b_instant_purchase.js</code> (RESTlet)Creates the Sales Order or Cash Sale from the ad click: card, ACH or an approved Net-30 PO, the FIFO lot reserved for 24 hours, the click token written to the transaction
Attribution<code>do_ue_so_campaign_attribution.js</code> (User Event) and <code>customrecord_do_dm_sales_attribution</code>Joins <code>transactionaccountingline</code> landed cost to each attributed order and posts spend, revenue and gross profit by channel
Baseline and ledger<code>customrecord_do_dm_campaign_ledger</code> and <code>do_sl_marketing_roi_cockpit.js</code> (Suitelet)Snapshots the trailing 90 days before the first impression and reports incremental gross profit against it

How a campaign runs

  1. Day-0 baseline. Before any ad is live, the bundle writes the trailing 90 days of sales by SKU, subsidiary and customer cohort to the campaign ledger. Every later figure is measured against this snapshot.
  2. Feed. The Map/Reduce syndicates each advertised SKU with its current ATP, lot age and price tier. When a pick takes ATP below the floor, the SKU’s ad groups pause on that cycle; when stock returns they resume.
  3. Creative. The studio renders each SKU photo into the three ratios with the stock count and price tier in the copy, and regenerates the variant when the SKU moves to the aged-lot rule.
  4. Order. The ad lands on a checkout that posts to the RESTlet. The Sales Order or Cash Sale is created with the lot reserved, the price tier applied and the click token on the transaction.
  5. Return. The User Event joins landed cost and writes the attribution record. The Suitelet reports gross profit by channel against the baseline; the figure the CFO sees is the one in the ledger.

What the bundle does not claim

Frequently asked questions

Which ad platforms does the feed reach?

Google Ads (Search RSA and Performance Max feeds), Facebook and Instagram catalog and Reels placements, TikTok and YouTube. Each channel receives the same ATP, lot-age and price-tier fields; the creative ratio differs by placement.

How is the return measured if a buyer sees the ad but orders through a rep?

Only orders that carry a click token are attributed, so a rep-entered order without one counts toward the baseline comparison but not toward a channel. The read is deliberately conservative: it understates the campaign rather than crediting it with sales it cannot tie to a click.

What does it cost and how long does it take?

$15,000 flat for the SDF bundle and feed setup, then $2,500 per month to run the engine, delivered in 14 days from account access with about three hours of your time. Ad spend is separate and paid to the platforms from your accounts.

Does this need NetSuite SuiteCommerce?

No. The checkout is a RESTlet landing page and the records are standard custom records; the bundle deploys through SDF to any NetSuite account with inventory items and the SuiteScript features enabled.

Commercial Transcript

CFO and CMO Dialogue: Ad Spend Read in Gross Margin, Not in a Pixel

NetSuite Inventory to Five Ad Channels, a Checkout That Posts the Order, and a Day-0 Baseline

A CFO who will not approve ad spend he cannot reconcile, a marketing lead with 1,800 SKUs and no video, and a COO with two lots past 90 days ask how a NetSuite SDF bundle feeds five ad channels from live ATP, renders SKU photos into video, posts the order with the lot reserved, and reports the return against a Day-0 baseline in realized gross margin.

Supply Chain Transcript

COO Dialogue: Dock Congestion and Freight Penalties

Connecting Forklift Scales and Ring Scanners Directly to NetSuite

A COO battling truck line-ups and carrier re-weigh fines. Kyle shows how carriage scales and direct ZPL thermal printing eliminate static scale stops and bypass expensive third-party WMS software.

Floor Lead Transcript

Floor Lead Dialogue: Scales, Scanners and FIFO Subrecords

Cold Storage Reality, Forklift Carriage Scales, and Zero Dismounts

A forklift veteran on why consumer tablets froze in a 15F freezer. Kyle details heated vehicle-mount terminals, hands-free ring scanning, and automated subrecord FIFO lot locks that alert drivers on a wrong pick.

Talk to the architect, not a salesperson

Aissistor technology for NetSuite: the five roles a company pays for, absorbed into one governed box at a modeled 20-80% lower cost, with the existing team repurposed rather than replaced, and every outcome published in a 100x time ledger with its source class.

Scope the B2B Inventory Ad Bundle   Read the 100x Ledger

The direct email and phone number are shared in the receipt of a verified request.