What DATESBETWEEN does
Filter calculations between two dates. In Power BI, the key is not only the formula itself but how it behaves with slicers, relationships, visuals and totals.
Syntax or pattern
DATESBETWEEN(dates, start_date, end_date)5 practical business examples
DATESBETWEEN in a sales report
Calculate sales from the start of the year to the current date.
Campaign Sales = CALCULATE([Total Sales], DATESBETWEEN(Calendar[Date], DATE(2026,1,1), DATE(2026,1,31)))Requires a proper marked date table.
Sales last year
Shift the current period to last year.
Campaign Sales = CALCULATE([Total Sales], DATESBETWEEN(Calendar[Date], DATE(2026,1,1), DATE(2026,1,31)))Use this for year-over-year comparisons.
Previous month sales
Compare current sales to the previous month.
Campaign Sales = CALCULATE([Total Sales], DATESBETWEEN(Calendar[Date], DATE(2026,1,1), DATE(2026,1,31)))Useful for monthly trend cards.
Rolling 12 month sales
Calculate sales over the last 12 months.
Campaign Sales = CALCULATE([Total Sales], DATESBETWEEN(Calendar[Date], DATE(2026,1,1), DATE(2026,1,31)))Good for smoothing seasonality.
Month-to-date target check
Compare current sales against current month target.
Campaign Sales = CALCULATE([Total Sales], DATESBETWEEN(Calendar[Date], DATE(2026,1,1), DATE(2026,1,31)))Use with month filters for target reporting.
Common mistakes to avoid
- Using DATESBETWEEN before checking whether the data model has the right relationships and filter direction.
- Writing one complex measure instead of creating simple base measures first.
- Testing only at the total level and not checking row, category and date contexts.
- Forgetting that slicers, visuals and relationships can all change the filter context.
FAQ
When should I use DATESBETWEEN in DAX?
Use DATESBETWEEN when the calculation pattern matches the business question and the result behaves correctly in the current filter context.
Why is my DATESBETWEEN measure returning the wrong total?
Most total issues come from row context, filter context, relationships, or using a column aggregation where an iterator or CALCULATE pattern is needed.
Can I use this DATESBETWEEN pattern in a calculated column?
Some patterns work in calculated columns, but most reporting calculations should be measures so they respond to slicers and report filters.