NewCustomers=CALCULATE(DISTINCTCOUNT(Orders[CustomerID]),FILTER(Orders,Orders[OrderDate]=[First Order Date (Internal)]))
External — Returning Customers Count
ReturningCustomers=CALCULATE(DISTINCTCOUNT(Orders[CustomerID]),FILTER(Orders,Orders[OrderDate]>[First Order Date (Internal)]))
First Order Date (Internal) uses ALLEXCEPT to ignore report date filters but keep the current customer. New Customers counts distinct customers whose order in context equals that first date; Returning Customers counts orders after that date.
NewinCategory=VARCurrentOrderDate=MAX(Orders[OrderDate])VARFirstInCat=[First Order in Category]RETURNIF(CurrentOrderDate=FirstInCat,1,0)
VAR CurrentOrderDate — captures the order date in the current filter context (the row being evaluated).
VAR FirstInCat — earliest order for this customer in this category only.
IF ( ... = FirstInCat, 1, 0 ) — flags 1 on the customer's first Electronics order even if they are returning in Clothing.
Sum or count this flag in a visual, or wrap with CALCULATE( DISTINCTCOUNT( Orders[CustomerID] ), ... ) for a category-level new customer count measure.
Free Resource
Download Free Power BI Resource
Enter your details below to receive the instant download link directly in your inbox. We only use your email to send the requested file and occasional updates—no spam.