and runs during HTML parse, but hubspotutk is set by js.hs-analytics.net, measured loading at ~834ms. On a first visit the cookie does not exist yet, so a single read returns nothing and the visitor gets no external ID at all — and a first visit is exactly what an ad click is. So poll briefly until HubSpot sets it. The SDK loads lazily (~4.5s) and replays a queue, so an init queued a second or two in still lands before any events are transmitted. */ (function attachExternalId() { var attempts = 0; var MAX_ATTEMPTS = 40; /* 40 x 200ms = 8s, then give up quietly */ var timer = null; function tryAttach() { var raw = getExternalId(); if (!raw) { if (++attempts >= MAX_ATTEMPTS && timer) clearInterval(timer); return; } if (timer) clearInterval(timer); sha256Hex(raw).then(function (hash) { oaiq("init", { user: { external_id_sha256: hash } }); }).catch(function () {}); } tryAttach(); /* returning visitor: immediate */ if (!getExternalId()) timer = setInterval(tryAttach, 200); })(); /* --------------------------------------------------------------------------- 2. Load the SDK off the critical path Whichever comes first: the main thread going idle after load, or the first sign of real user intent. No preconnect on purpose — a TLS handshake during LCP for a script we deliberately deferred is a net loss. Measured on clickpost.ai: load event 3614ms, SDK fetched 4508ms. ------------------------------------------------------------------------ */ var loaded = false; var INTENT = ["pointerdown", "keydown", "scroll"]; function loadSdk() { if (loaded) return; loaded = true; INTENT.forEach(function (t) { removeEventListener(t, loadSdk, { passive: true }); }); var s = document.createElement("script"); s.src = SDK; s.async = true; s.fetchPriority = "low"; document.head.appendChild(s); } INTENT.forEach(function (t) { addEventListener(t, loadSdk, { passive: true, once: true }); }); addEventListener("load", function () { window.requestIdleCallback ? requestIdleCallback(loadSdk, { timeout: 2500 }) : setTimeout(loadSdk, 1500); }, { once: true }); /* --------------------------------------------------------------------------- 3. Conversion id sha256(lowercase(email) + "|" + formId + "|" + ISO-hour), first 20 hex, "lead_" prefix. - email lowercased/trimmed so casing does not fork the id - formId keeps two different forms in the same hour from colliding - the hour bucket is only the server's fallback; the id computed here is sent to the relay verbatim, so the two paths cannot disagree even when a submit straddles an hour boundary Ads Manager's own sample omits event_id. We send it so the pixel event and the relay event collapse into one conversion instead of counting twice. ------------------------------------------------------------------------ */ function buildEventId(email, formId) { var seed = [ String(email || "").trim().toLowerCase(), String(formId || ""), new Date().toISOString().slice(0, 13) ].join("|"); return crypto.subtle.digest("SHA-256", new TextEncoder().encode(seed)).then(function (buf) { var hex = Array.prototype.map.call(new Uint8Array(buf), function (b) { return b.toString(16).padStart(2, "0"); }).join(""); return "lead_" + hex.slice(0, 20); }); } /* Guards a re-fire from the history.pushState that book-a-demo-core.js runs after submit, and from back-navigation onto the same state. */ function firedOnce(id) { try { if (sessionStorage.getItem("oaiq_" + id)) return true; sessionStorage.setItem("oaiq_" + id, "1"); return false; } catch (e) { return false; /* private mode / blocked storage: fire rather than lose it */ } } /* Path 2. keepalive lets the request finish even if the page navigates away. Failures are swallowed deliberately: a reporting call must never surface an error to someone who just submitted a form. The relay hashes the email server-side into user.emails_sha256 and adds the caller's IP and user agent, so this event carries the same match signals the pixel gets for free. */ function sendToRelay(email, formId, eventType, eventId) { try { var payload = { token: RELAY_TOKEN, email: email, form_id: formId || "", event_type: eventType, event_id: eventId, /* verbatim, so both paths always match */ source_url: location.href }; var oppref = getOppref(); if (oppref) payload.oppref = oppref; var externalId = getExternalId(); if (externalId) payload.external_id = externalId; fetch(RELAY_URL, { method: "POST", keepalive: true, headers: { "Content-Type": "application/json" }, body: JSON.stringify(payload) }).catch(function () {}); } catch (e) {} } /* Capture the email while the form is still on the page. onFormSubmitted does not reliably carry submissionValues, and by then the form may be removed. */ var lastEmail = ""; document.addEventListener("submit", function (e) { var f = e.target; if (!f || !f.querySelector) return; var i = f.querySelector('input[name="email"], input[type="email"]'); if (i && i.value) lastEmail = i.value; }, true); /* Every HubSpot form on the site reports through this one message event, so no module or theme JS needs editing to add coverage. */ window.addEventListener("message", function (e) { var d = e.data; if (!d || d.type !== "hsFormCallback" || d.eventName !== "onFormSubmitted") return; var email = (d.data && d.data.submissionValues && d.data.submissionValues.email) || lastEmail; if (!email) return; /* without an email there is no stable id to dedupe on */ var eventType = EVENT_BY_FORM[d.id] || EVENT_DEFAULT; buildEventId(email, d.id).then(function (id) { if (firedOnce(id)) return; oaiq("measure", eventType, { type: DATA_TYPE }, { event_id: id }); /* path 1 */ sendToRelay(email, d.id, eventType, id); /* path 2 */ }); }); })();

91ÊÓÆµ

See where your logistics stands on automation Start assessment

Home > Blog >

Wellbeing Nutrition Cuts Shipping Cost by 15% with ClickPost

Wellbeing Nutrition Cuts Shipping Cost by 15% with ClickPost

Manjusha Pal
By Manjusha Pal

Ready to ship smarter? Talk to our logistics experts.

Trusted by 600+ brands

In this blog

    A Story of Vision, Hurdles, and Growth

    Since its launch in 2019, has pioneered the nutraceutical space with plant-based supplements that offer a unique blend of nature, science, and innovation. With a  68.7% YoY growth in FY24, it’s now present in the UK, US, UAE, and the Netherlands and manages over 1.2 lakh shipments annually. 

    However, as the brand scaled, it faced several new challenges: rising shipping costs, fragmented post-purchase experiences, and a lack of control over the commercials. With a global footprint and increasing demand, Wellbeing Nutrition was looking for a more efficient way to manage its logistics while improving its customer experience. That’s when it forged a collaboration with ClickPost. 

    When we sat down for a discussion with  (the VP of Supply Chain at Wellbeing Nutrition), we got an inside look at how the company slashed its most pressing logistics hurdles. He disclosed the complexities of managing supply chain operations across multiple logistics partners and aggregators and how these challenges were impacting their ability to scale.

    As the conversation progressed, Sahil explained how partnering with ClickPost enabled Wellbeing Nutrition to bring down shipping costs by 15%, get better control over the commercials, and drive efficiency.

    The Struggles Behind the Scenes

    As Wellbeing Nutrition soared to new heights, a set of challenges came as obstacles in its way:

    1. Lack of Control Over Commercials 

    Without a systematic approach, it was difficult for Wellbeing Nutrition to have control over the logistics partners and their daily operations. This hindered its ability to optimize costs and secure better commercial terms. “We wanted to have better control on our operations, logistic partners… better control over the commercials,â€� stated Sahil, VP of Supply Chain. 

    2. Inefficient Carrier Management & performance issues

    Wellbeing Nutrition was on an approach to manually switch between its direct logistics partner and an aggregator. This process highlighted a significant need for an automated system to smartly manage their hybrid carrier network and mitigate carrier performance issues. 

    3. High Cost Per Shipment

    A lack of control over the carrier network further led to a situation where the cost per shipment (CPS) was off-track. Wellbeing Nutrition recognized the need for significant optimization to bring down these expenses and support its continued growth. 

    4. Scattered Post-Purchase Data

    For any brand, having a single repository of logistics data is very crucial to evaluate the carrier performance and supply chain activity. But Wellbeing Nutrition’s data hub was fragmented, which imposed a significant challenge on their supply chain growth. Sahil noted, “See, for any D2C brand, it is very important, plus it’s a challenge to have all the post-purchase data points related to logistics [and] order tracking at a single point.�

    5. Gaps in Post-Purchase Experience

    Today’s e-commerce market is transitioning to a point where building a post-purchase experience is no longer optional. Wellbeing Nutrition was also in search of a system that guarantees effective post-purchase communication, streamlined management, and a smooth post-purchase journey. 

    Where the Shift Happened

    When these pain points emerged as roadblocks in Wellbeing Nutrition’s way to supply chain success, they were looking for a partner who would not only offer a solution but also join hands to build resilient supply chain operations. 

    That’s when they joined hands with ClickPost. What began as targeted solutions soon grew into a full-scale partnership. ClickPost’s technology offered the visibility, control, and intelligence the brand needed to streamline operations and deliver a better customer experience.

    A Shared Effort in Overcoming Challenges—The ClickPost Approach

    We adopted a multi-pronged approach and provided Wellbeing Nutrition with various solutions to tackle these challenges head-on. 

    1. AI-Powered Carrier Allocation for Cost Optimization

    We offered Wellbeing Nutrition our AI-powered carrier allocation system so they can gain complete control over carrier allocation. It gave them the flexibility to adjust different parameters as per their requirements, which further improved their control over commercial outcomes.

    Sahil endorses this by saying: 

    “Now we have a daily visibility and basis that we can take a proactive decision on changing the parameters by using a performance-based allocation feature that ClickPost gives. As I mentioned, better control on the commercial as compared to an aggregator…â€�  

    2. Carrier Management to Overcome Performance Issues 

    Wellbeing Nutrition’s “hybrid approachâ€� of working with a direct carrier and an aggregator has also been streamlined with the carrier-based allocation system. It has made the switch seamless between the logistics partner and carrier aggregator, making carrier management more efficient. 

    As the VP mentioned, 

    “But even though we are now on a hybrid approach. For example, working directly with an LP plus an aggregator and shuffling between them in terms of performance to overcome certain performance issues—that is one major advantage.â€� 

     

    3. High-Quality Data and Insights Dashboard

    As we mentioned earlier, fragmented post-purchase data was one of the major roadblocks Wellbeing Nutrition faced before partnering with ClickPost. Wellbeing Nutrition has addressed this challenge using ClickPost’s analytics module. Our analytics module offers insights across various activities and consolidates them into a centralized hub. Alongside that, the quality of data has allowed them to make more informed decisions, further enhancing their operational efficiency. 

    Sahil emphasizes, “I would recommend ClickPost predominantly for having that, plus what it does is the quality of data, insights that we get from the dashboard.â€� 

    4. Automated Notifications for Post-Purchase Experience

    With ClickPost’s notification module in place, the D2C conglomerate has improved the post-purchase experience. This notification system sends checkpoint-specific alerts to its customers at each step and adopts a multi-channel approach, so the shoppers stay in the loop, irrespective of their preferred way of communication—which further made the entire post-purchase process intact and more transparent. 

    Sahil adds, 

    “...automated notifications that go to the customer to ensure the post-purchase journey is communicated well and is intact.â€�  

    5. Failed Delivery Management System for Improved Post-purchase Journey

    This wellness innovator has redefined their post-purchase journey with the NDR suite offered by ClickPost. As soon as it identifies the failed delivery, it segregates them into issue-specific buckets and coordinates with customers and carriers to make the delivery successful—all through an automated way. 

    A Journey Marked by Meaningful Milestones

    Here are a few key milestones that resulted from this collaboration:

     

    • 15% reduction in shipping costs with smarter carrier allocation.

    • Higher control over logistics commercials, improving operational predictability.

    • 100% centralized visibility into carrier performance and post-purchase data.

    • Seamless hybrid carrier management between direct LPs and aggregators.

    What Worked, What We Learned—And How It Can Work for You

    Wellbeing Nutrition’s collaboration with ClickPost offered several key takeaways about scaling logistics and enhancing post-purchase experiences:

     

    • Control drives cost efficiency — gaining visibility and control over carrier allocation directly impacts cost savings, as seen with a 15% reduction in shipping expenses.

    • Centralized data is critical — having all post-purchase metrics in one place helps brands make faster, more informed decisions and improves overall operational efficiency.

    • Flexibility strengthens performance — the ability to switch seamlessly between direct carriers and aggregators ensures smoother operations and better delivery outcomes.

    • Customer experience shapes loyalty — proactive, automated updates throughout the post-purchase journey reduce uncertainty and build stronger trust with customers.

    A partnership that grew into a shared journey

    What began as a collaboration to solve immediate logistics challenges has evolved into a strategic partnership built on trust and adaptability. The ClickPost team worked closely with Wellbeing Nutrition to anticipate operational needs, introduce relevant new features, and ensure smooth adoption of tools that align with their long-term growth plans.

    “An added advantage is the team is very preemptive, proactive in helping you out without much follow-up. They anticipate the questions quite well. The knowledge related to the products is very deep-rooted, which helps in faster decision-making and actually making the features right.â€� 

    — Sahil Kulkarni, VP of Supply Chain, Wellbeing Nutrition

    As Wellbeing Nutrition scales into new markets, this partnership continues to ensure that its logistics operations remain agile, cost-efficient, and customer-focused. 

    The Logistics Automation Platform for E-commerce

    Momentum Leader - G2 Users Most Likely To Recommend - G2 Best Results Mid-Market - G2
    . window.disableHubSpotCookieBanner = true; function killNative() { var n = document.getElementById("hs-eu-cookie-confirmation"); if (n && n.parentNode) { n.parentNode.removeChild(n); return true; } return false; } killNative(); if (window.MutationObserver) { var mo = new MutationObserver(function () { killNative(); }); mo.observe(document.documentElement, { childList: true, subtree: true }); setTimeout(function () { mo.disconnect(); }, 15000); } var COOKIE = "cp_cookie_consent"; var EU = ["at","be","bg","hr","cy","cz","dk","ee","fi","fr","de","gr","hu","ie","it","lv","lt","lu","mt","nl","pl","pt","ro","sk","si","es","se","gb","uk","is","li","no","ch"]; function readCookie(nm) { var m = document.cookie.match(new RegExp("(?:^|; )" + nm + "=([^;]*)")); return m ? decodeURIComponent(m[1]) : null; } function writeCookie(nm, val, days) { var d = new Date(); d.setTime(d.getTime() + (days * 864e5)); document.cookie = nm + "=" + encodeURIComponent(val) + ";expires=" + d.toUTCString() + ";path=/;SameSite=Lax" + (location.protocol === "https:" ? ";Secure" : ""); } function stored() { var raw = readCookie(COOKIE); if (!raw) return null; try { var o = JSON.parse(raw); if (typeof o.analytics === "boolean") return o; } catch (e) {} return null; } function apply(state, revoke) { window._hsp = window._hsp || []; window._hsp.push(["setHubSpotConsent", { analytics: !!state.analytics, advertisement: !!state.advertisement, functionality: !!state.functionality }]); if (revoke && !state.analytics && !state.advertisement && !state.functionality) { window._hsp.push(["revokeCookieConsent"]); } window.dataLayer = window.dataLayer || []; window.dataLayer.push({ event: "cp_cookie_consent", cp_consent_analytics: !!state.analytics, cp_consent_advertisement: !!state.advertisement, cp_consent_functionality: !!state.functionality }); document.documentElement.setAttribute("data-cp-consent", "set"); } function inScope(banner) { if (banner.getAttribute("data-scope") !== "eu_only") return true; var geo = (document.body.getAttribute("data-geo_location") || "").toLowerCase(); if (!geo) return true; return EU.indexOf(geo) !== -1; } function init(banner) { var days = parseInt(banner.getAttribute("data-days"), 10) || 180; var prefs = banner.querySelector("[data-cpcb-prefs]"); var compact = banner.querySelector('[data-cpcb-actions="compact"]'); var expanded = banner.querySelector('[data-cpcb-actions="expanded"]'); var toggles = banner.querySelectorAll("[data-cpcb-toggle]"); function show() { banner.hidden = false; requestAnimationFrame(function () { banner.classList.add("is-visible"); }); } function hide() { banner.classList.remove("is-visible"); setTimeout(function () { banner.hidden = true; }, 300); } function collapse() { if (!prefs) return; prefs.hidden = true; if (expanded) expanded.hidden = true; if (compact) compact.hidden = false; } function expand() { if (!prefs) return; prefs.hidden = false; if (compact) compact.hidden = true; if (expanded) expanded.hidden = false; } function paint(state) { Array.prototype.forEach.call(toggles, function (t) { var key = t.getAttribute("data-cpcb-toggle"); if (key === "necessary") { t.setAttribute("aria-checked", "true"); return; } t.setAttribute("aria-checked", state[key] ? "true" : "false"); }); } function fromToggles() { var state = { analytics: false, advertisement: false, functionality: false }; Array.prototype.forEach.call(toggles, function (t) { var key = t.getAttribute("data-cpcb-toggle"); if (key in state) state[key] = t.getAttribute("aria-checked") === "true"; }); return state; } function commit(state, revoke) { writeCookie(COOKIE, JSON.stringify({ analytics: !!state.analytics, advertisement: !!state.advertisement, functionality: !!state.functionality, v: 1, ts: Date.now() }), days); apply(state, revoke); hide(); } Array.prototype.forEach.call(toggles, function (t) { if (t.disabled) return; t.addEventListener("click", function () { t.setAttribute("aria-checked", t.getAttribute("aria-checked") === "true" ? "false" : "true"); }); }); banner.addEventListener("click", function (e) { if (!e.target || !e.target.closest) return; var btn = e.target.closest("[data-cpcb-action]"); if (!btn) return; var action = btn.getAttribute("data-cpcb-action"); if (action === "customise") { expand(); return; } if (action === "accept") { commit({ analytics: true, advertisement: true, functionality: true }, false); return; } if (action === "reject") { commit({ analytics: false, advertisement: false, functionality: false }, true); return; } if (action === "save") { commit(fromToggles(), true); return; } }); var existing = stored(); if (existing) { apply(existing, false); paint(existing); collapse(); } else if (!inScope(banner)) { // Out of the consent-required region: implied consent, banner never shown. commitSilently(); } else { collapse(); show(); } function commitSilently() { var all = { analytics: true, advertisement: true, functionality: true }; writeCookie(COOKIE, JSON.stringify({ analytics: true, advertisement: true, functionality: true, v: 1, ts: Date.now(), implied: true }), days); apply(all, false); } // Public re-open hook for a footer "Cookie settings" link. window.cpCookieBanner = window.cpCookieBanner || {}; window.cpCookieBanner.open = function () { var s = stored() || { analytics: false, advertisement: false, functionality: false }; paint(s); expand(); show(); }; } function boot() { var banners = document.querySelectorAll("[data-cpcb]"); if (!banners.length) return; init(banners[0]); document.addEventListener("click", function (e) { if (!e.target || !e.target.closest) return; var trigger = e.target.closest("[data-cp-cookie-settings]"); if (!trigger) return; e.preventDefault(); if (window.cpCookieBanner && window.cpCookieBanner.open) window.cpCookieBanner.open(); }); } if (document.readyState === "loading") { document.addEventListener("DOMContentLoaded", boot); } else { boot(); } })();