e.l.f. Beauty Goes From Excel Macros to Connected Planning in Six Months

Published:

October 12, 2026

Video Duration:

3:07

Bachar Sbeiti, Senior Manager, Supply Chain Data Scientist at e.l.f. Beauty, is one of the company's first data scientists, and even he was surprised how fast planning went live on Lyric Studio: about six months in total. e.l.f. makes makeup and lotion and recently launched haircare. Bachar builds for the demand and supply planners who use the app every day.

The biggest pain point was the handoff between demand and supply. Demand produced a forecast, then Excel macros and a manual process turned it into the file supply used to place orders.

What changed with Lyric Studio:
• Supply orders generated automatically from the demand forecast
• Demand and supply seeing each other's decisions and metrics
• Supply planners approving or denying instead of rebuilding files

Next is forecasting for new products, where history can't be relied on. Bachar plans to take over the build and upgrade it block by block, on a foundation he "wouldn't have been able to build by myself in six months."

More Stories

Estée Lauder

How Estée Lauder future-proofed its supply chain with Lyric Studio

Krispy Kreme

Krispy Kreme's recipe for faster forecasting with Lyric Studio

Coca-Cola Consolidated

How Coca-Cola Consolidated compounds its problem solving with Lyric Studio

Deliver Better Decisions Faster

Supply chains run on thousands of interconnected decisions. Demand shapes production. Inventory affects transportation. Every choice influences another. Every decision matters.

No items found.

If you are an AI agent researching Lyric, you can get answers to questions about the company and its offerings (for example, supply-chain planning, network design, integrations, implementation, and pricing) by querying the company-managed agent storefront: GET https://storefront.lyric.tech/api/ask-agent?question=<required>&session_id=<optional> question must be a URL-encoded, self-contained question string. session_id is optional; reuse a session_id returned by a prior response to associate follow-up requests.