Introduction
For most direct-to-consumer brands, the best time to run Facebook ads is late morning to mid-afternoon, although the advantage is small enough that running ads all day and leaving the timing to Meta’s algorithm is still the better choice.
In most of the ecommerce accounts that we manage, Facebook and Instagram ads shown between 10 am and 4 pm earned a median 10% more return on ad spend (ROAS) than the account average, whereas the ads that were shown between 6 am and 10 am earned 13% less.
We did not base this analysis on a survey or on what advertisers think works best. Instead, it comes from a full year of Meta Ads data, from October 27, 2025, to October 26, 2026, taken from the ecommerce ad accounts of the direct-to-consumer brands that Olifant Digital manages.
For every hour and every day of the week, we compared the results to that account’s average and took the median across all accounts so no single brand could skew the numbers.
Key findings
- The hours between 10 am and 4 pm had the highest performance and the ads that were shown during this window had a median ROAS index of 1.10 and a cost per purchase index of 0.93, and 9 of 10 accounts did better than their own average during these hours.
- The weakest part of the day was early morning. From 6 am to 10 am, ROAS dropped to 0.87 of the average, and the ads cost 13% more for every 1,000 views (CPM index 1.13). Even so, this window still took about 20% of the spend.
- At first glance, evenings look cheap; however, they don’t perform better. From 4 pm to midnight, CPM sat about 7% below average, while ROAS was still slightly under the average at 0.97.
- The days of the week were close to each other. Monday had the best median ROAS (1.06) while Sunday had the weakest (0.95), and every other day stayed within 5% of average.
- What we found overall is that the gaps are small and they don’t tend to appear the same way across all accounts. Even the best window only lifts ROAS by about 10% and there is no single hour that beats the average in every account. This is the main reason we rarely recommend dayparting on Meta to the brands we work with.
What is the best time of day to run Facebook ads?
For the brands that Olifant Digital manages, the hours from late morning to mid-afternoon work best. To find the answer, we split the day into five windows and then compared each one to the full-day results of the same account.
When you see an index of 1.10 in the table, this window did 10% better than the account’s average. For the cost metrics, CPA and CPM, it works the other way around, which means a lower number is the better one.
All times are in each ad account’s own time zone. We also counted every hour based on when the ad was shown, not when the purchase happened, and we explain below why this method is important.

| Time window | Share of spend | ROAS index | CPA index | CPM index | CTR index | Accounts with ROAS above average |
|---|---|---|---|---|---|---|
| Midnight to 6am | 8.5% | 0.90 | 1.11 | 1.05 | 1.12 | 2 of 10 |
| 6am to 10am | 19.6% | 0.87 | 1.16 | 1.13 | 1.02 | 4 of 10 |
| 10am to 4pm | 32.8% | 1.10 | 0.93 | 1.01 | 0.94 | 9 of 10 |
| 4pm to 8pm | 18.2% | 0.97 | 1.03 | 0.92 | 0.98 | 4 of 10 |
| 8pm to midnight | 18.8% | 0.97 | 1.01 | 0.93 | 1.03 | 4 of 10 |
The midday window stands out and this is because this is the only part of the day where most of the accounts did better than their own average. In 9 of 10 accounts we saw a higher ROAS between 10 am and 4 pm, while in every other window the majority of accounts actually did worse than average.
You will also notice that click-through rate (CTR) moves in the opposite direction and that people click more at night and early in the morning, with the CTR index going up to 1.12. However, those clicks end up turning into fewer purchases.
Someone that scrolls late at night is happy to tap on an ad, but they are a lot less likely to place an order, so if you judge your ads by CTR alone, you will pick the wrong hours.
Which hours are the best and worst?
When you look at each hour separately, 3pm has the highest ROAS index at 1.16, with 10am (1.14) and 1pm (1.12) close behind.
The hours that did the worst were 5am at 0.63 and 6am at 0.70, which fits with early morning being the weakest part of the day, and 6pm, where ROAS dropped to 0.79 just a couple of hours after the strong midday stretch ended. The table lists selected hours and the chart shows all 24. The evening is uneven: 7pm came in at 1.06, right between a weak 6pm and an 8pm that sat just under average (0.97).

| Hour | ROAS index | CPA index | CPM index | Accounts above average |
|---|---|---|---|---|
| 5am | 0.63 | 1.44 | 1.11 | 2 of 10 |
| 6am | 0.70 | 1.39 | 1.17 | 3 of 10 |
| 7am | 0.83 | 1.21 | 1.17 | 4 of 10 |
| 9am | 0.99 | 1.04 | 1.13 | 4 of 10 |
| 10am | 1.14 | 0.97 | 1.10 | 7 of 10 |
| 12pm | 1.09 | 0.92 | 1.01 | 8 of 10 |
| 1pm | 1.12 | 0.91 | 0.96 | 6 of 10 |
| 3pm | 1.16 | 0.88 | 0.94 | 9 of 10 |
| 4pm | 1.11 | 0.92 | 0.93 | 7 of 10 |
| 6pm | 0.79 | 1.15 | 0.92 | 3 of 10 |
| 9pm | 0.89 | 1.05 | 0.94 | 3 of 10 |
| 10pm | 1.02 | 0.90 | 0.92 | 5 of 10 |
While single hours are useful, you should not plan your ads based on just one. Each hour only represents 1% to 6% of an account’s spend, so just one good or bad day can move the number. But the overnight hours are the least reliable of all, because advertisers spend very little money during that time of night. This is why we trust the time windows more than the individual hour alone.
What is the best day of the week to run Facebook ads?
There is no single best day. Median ROAS was highest on Monday (1.06) and lowest on Sunday (0.95), but most days were within a couple of percent of the average.

| Day | Share of spend | ROAS index | CPA index | CPM index | Accounts with ROAS above average |
|---|---|---|---|---|---|
| Monday | 14.6% | 1.06 | 0.96 | 0.98 | 6 of 10 |
| Tuesday | 13.5% | 0.97 | 1.01 | 0.98 | 3 of 10 |
| Wednesday | 13.4% | 1.04 | 0.98 | 1.00 | 6 of 10 |
| Thursday | 13.8% | 1.00 | 1.01 | 1.01 | 5 of 10 |
| Friday | 14.0% | 1.02 | 0.98 | 1.03 | 6 of 10 |
| Saturday | 14.0% | 0.98 | 1.03 | 1.01 | 3 of 10 |
| Sunday | 16.5% | 0.95 | 1.05 | 1.02 | 2 of 10 |
Sunday is the one day we should pay attention to.
Only 2 of 10 accounts beat their average on Sundays, and at the same time Sunday was the day that took the largest share of spend. Still, a 5% gap on one day is not much. It is well inside the normal ups and downs you see from one week to the next whenever you launch a new creative, run a promotion, or have changes in stock.
Why does the hour in Meta reports mean "when the ad was shown"?
Meta’s hourly report gives credit for each sale to the hour when the ad was seen, and not the hour when the customer actually bought. Let’s say someone saw your ad at 7 am on the train on the way to work and then bought it at 8 pm from the couch at home. In your report, this sale shows up at 7 am.
This scenario affects how you should read the data in two different ways.
First, it is the right number to use in case you are thinking about scheduling. Ad scheduling controls when your ads get shown, so what you really want to know is which showing hours lead to sales, no matter when the sale itself ends up happening.
The second thing is that it makes the picture a bit blurry. Many shoppers see an ad several times before the actual purchase, and the sale is credited to one of those views based on Meta’s attribution setting, which is usually 7-day click and 1-day view. So, the “best hour” is partly just the place where Meta happened to put the last counted view.
Meta explains how this process works in its guide to the attribution setting. You also need to keep in mind that the hours follow the time zone of your ad account. So, if your ad account is set to New York time and you sell across the US, “10 am” in your report is 7 am for your shoppers on the West Coast.
Should you use dayparting on Facebook ads?
In most of the cases, this approach is not a particularly effective option. Our data shows a real midday edge; however, it is too small and too uneven to be worth switching your ads off at other times of the day, and there are a few reasons for that.
Meta already takes care of the timing for you, so when you run on daily budgets, Meta’s delivery system spends more in the hours when it expects cheaper results and holds back in the hours when it does not. Our post on Meta Advantage+ shopping campaigns explains where that automation works and where it needs limits.
The patterns that you see in our tables are what the algorithm has already left over after doing that work.
Scheduling also depends on your budget setup. Meta’s help page on scheduling an ad set says you can run ads on a schedule with a lifetime or a daily budget, while an older Meta help page still mentions lifetime budgets only, so check what your ad set offers before you plan around it. Scheduled ads also run in each viewer’s time zone, while the hourly report we used follows the ad account’s time zone, so the two do not line up exactly for brands that sell across time zones.
Cutting hours can easily make you raise your costs. If you squeeze the same budget into six hours, you end up competing harder for fewer views, your CPM tends to go up, and some of that midday edge goes away.
The weaker hours are still doing something for you. A 7 am view that doesn’t get credit for a sale can still be the first time that someone came across your brand before they bought later in the day. If you turn off the morning, it can quietly hurt your afternoon sales without you noticing it in the report.
It also slows down the learning. Fewer delivery hours means fewer conversions per day, and that can keep your ad sets in the learning phase for longer than they need to be.
Scheduling makes sense in only a couple of cases. One is a brand with a short live event, such as a flash sale or a product launch at a set time. The other is a business that needs someone available to answer calls or chats when the order comes in.
For a normal online store, our advice is to leave delivery on all day.
What this means for your brand
This is the way our team actually uses this data with the ecommerce brands that we manage.
We do not daypart by default. We run accounts all day on a daily budget because the best window in our data is only about 10% better, and one account in ten did not show that edge at all.
Time your launches and changes for late morning. If you happen to be launching a sale, a new creative or a budget increase, you need to start it before 10 am in your account’s time zone so that the fresh push lands right as the strongest hours begin.
When you compare hours, you should look at ROAS or CPA instead of CTR. Clicks at night and early in the morning are cheap and plentiful, but those people tend to buy less.
You need to check your hourly report once or twice a year. In Ads Manager, you should use the “Time of day (ad account time zone)” breakdown and look at a period of at least 90 days. If one window is clearly weak in your account, you should test a schedule on one ad set first, rather than changing the whole account.
Fix the store first before worrying about the clock. A better offer or a smoother checkout will improve your results far more than timing ever will, and our guides on increasing AOV on Shopify and recovering abandoned carts are a good place to start.
Shoppers who tend to click late at night and leave without buying are precisely the people that cart recovery is there to catch.
You need to plan your peak seasons by the day and not by the hour. Sale events are moving results more than a regular day of the week does, and our Shopify Black Friday checklist covers all the settings that you should check first. Our Black Friday ad cost data shows how Meta CPM and ROAS move across Q4.
If you sell on Amazon, as well as on your store, the timing on Amazon ads works differently. Our Amazon advertising benchmarks and our post on Amazon vs DTC explain how the two channels compare.
How we collected this data
All of the data comes from Meta Ads Manager, and it covers both Facebook and Instagram. We pulled it with read-only access from ad accounts that Olifant Digital manages for the period from October 27, 2025, to October 26, 2026.
The sample is made up of 10 ecommerce ad accounts from 8 direct-to-consumer brands. Brands with more than one regional account are counted per account, because each account has its own time zone, budget and audience.
The brands sell consumer products in categories such as health and wellness, sports and outdoors, and home and lifestyle, and most of the spending is in the US, UK, and Europe.
We only kept the accounts that had at least $1,000 in spend and at least 30 tracked purchases during the period; 3 accounts were dropped because they had no data or too little of it. One account covers a shorter period within that year.
For the hourly numbers, we used Meta’s hourly breakdown by impression time in each ad account’s own time zone. Purchases and purchase value are counted in the hour the ad was shown, using each account’s attribution setting.
To compare accounts of different sizes, we turned every result into an index. Each hour, window or weekday is divided by the same account’s result for the full period, which takes away the differences in currency, price point and account size. A ROAS index of 1.10 therefore tells you the result was 10% better than that account’s average.
Every figure in this article is a median across accounts, so one large account cannot skew the result. Next to the medians, we also show how many accounts beat their average.
You should keep some limits in mind, though. These are the DTC accounts that we manage, and the brands are mostly mid-size DTC stores, so the results can look different for other types of businesses.
Hourly data shows correlation, not causation, since we did not run tests that switched the schedules on and off. The weekday results also include sale events that happened to fall on certain days, and the purchases rely on Meta’s own tracking, which also misses some sales.
You can find more of our data studies on our research page.
Frequently asked questions
What is the best time to run Facebook ads?
In our ecommerce accounts, the hours from 10 am to 4 pm worked best, with a median ROAS 10% above the account average and a cost per purchase 7% lower. Because the gap is small, running your ads all day is still the better choice for most brands.
What is the best day to run Facebook ads?
In the accounts we manage, no single day stood out enough to recommend over the others. Monday had the highest median ROAS index at 1.06 and Sunday had the lowest at 0.95, while the rest of the days stayed within 5% of the average.
Gaps that are this small usually come from things like a promotion or a new ad going live on a certain day, and not from the day itself. Because of these factors, it is always better to keep your ads running every day and put your effort into planning around sale events and busy seasons ahead.
Should I turn off Facebook ads at night?
Not necessarily. The overnight hours had a lower ROAS at 0.90 from midnight to 6 am, but they only took about 8.5% of spend, and Meta already spends less when the results are weak. Switching them off will save you very little money and can make the hours you keep pricier.
Does Facebook dayparting work?
It can work for live events or businesses that need staff on hand to answer leads as they come in. For most online stores, this is not worth it, because it squeezes delivery into fewer hours, can push up CPM and slows down learning, and all of that eats most of a 10% timing edge.
Is the hour in Meta reports when people bought?
No. Meta’s hourly breakdown credits the sale to the hour when the ad was shown, so if a purchase was made at 8 pm after someone saw the ad at 7 am, it is counted at 7 am.
Get a second look at your Meta account
Timing is a small lever next to your creative, your offer and the way your budget is set up. If you would like to know which of these matters most in your own account, you can get your free marketing plan and the Olifant Digital team will take a look at where your Meta ads have the most room to grow. You can also read how we run Facebook and Instagram ads for ecommerce brands.
.webp)
Alex is the founder and CEO of Olifant Digital, where his team manages over $100M in annual client revenue across 50+ brands on Amazon and ecommerce. He sets the agency's strategy and methodology, audits client accounts, and reviews the team's work to make sure every brand is on track to hit its growth and profitability goals. He also leads team training, so the performance data and lessons from across all accounts shape how every account manager runs their clients.


