WooCommerce Discount Rules & Dynamic Pricing: Scheduling & Date-Time Guide
Timing is everything in e-commerce promotions. Whether launching a midnight flash sale, running a weekend buy-one-get-one promotion, scheduling a week-long Black Friday campaign, or hosting a daily evening "Happy Hour," Discount Rules and Dynamic Pricing for WooCommerce includes a dedicated Scheduling & Date-Time Engine.
Scheduling operates alongside rule conditions to ensure that promotional discounts, bulk pricing tables, checkout fees, and free shipping methods automatically activate and deactivate at exact dates, times, and recurring schedulesβwithout requiring manual intervention.
π Table of Contentsβ
- How the Scheduling Engine Works
- The 5 Scheduling Condition Types
- Multi-Tier Schedule Logic (AND vs. OR)
- Important: WordPress Site Timezone
- Real-World E-Commerce Scheduling Strategies
- Frequently Asked Questions (FAQ)
- SEO Keywords
β° How the Scheduling Engine Worksβ
The scheduling engine is built into every discount rule, bulk pricing tier, checkout fee, and custom shipping method within the plugin.
Whenever a shopper views a product page, adds items to their cart, or views the checkout page, the backend validator (WCCS_Date_Time_Validator) checks the current server timestamp against your configured schedule:
- No Schedule Configured: The rule runs continuously (24 hours a day, 7 days a week) as long as it is enabled.
- Single Condition: The rule activates only when the current date/time satisfies the condition.
- Multi-Condition Groups: Supports nested AND and OR logic to build sophisticated schedules (such as Fridays & Saturdays between 6:00 PM and 10:00 PM).
ποΈ The 5 Scheduling Condition Typesβ
Click the Schedule section in any rule editor and choose between 5 scheduling modes in the dropdown:
ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β Type: [ Date / Date Time / Specific Date / Time / Days ]
ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
1. Date (Date Range)β
- Field Value:
date - Inputs:
Start(Calendar date picker) andEnd(Calendar date picker) inYYYY-MM-DDformat. - How It Works:
- Start Date only: The discount activates at
00:00:00on the start date and runs indefinitely. - End Date only: The discount runs immediately and automatically expires at
23:59:59on the end date. - Start + End Date: The discount is active exclusively between the start of the first day and the end of the final day.
- Start Date only: The discount activates at
- Best For:
- Multi-day seasonal promotions (e.g., Summer Clearance: July 1 to July 15).
- Monthly promotions (e.g., Back-to-School Sale: August 15 to September 5).
- Launch campaigns that begin on a specific day.
2. Date Time (Exact Minute Precision)β
- Field Value:
date_time - Inputs:
Start(Date & Time picker) andEnd(Date & Time picker) inYYYY-MM-DD HH:mmformat. - How It Works: Compares against the live WordPress server timestamp down to the exact minute.
- Best For:
- 24-Hour Flash Sales: Start precisely at
2026-11-27 00:00and end at2026-11-27 23:59. - Midnight Launches: Activate a 15% early-bird discount from
00:00to06:00. - Cyber Monday Countdown Deals: End a doorbuster promotion at exactly
11:59 PM.
- 24-Hour Flash Sales: Start precisely at
- Pro Tip: Pair with the plugin's Sale Countdown Timer to display a real-time ticking clock on the product page!
3. Specific Date (Calendar Days)β
- Field Value:
specific_date - Inputs: Multi-date calendar picker allowing you to select one or multiple individual dates.
- How It Works: The discount triggers if today's date matches any of the selected calendar dates.
- Best For:
- Holiday Sales: Select
2026-12-25(Christmas),2027-01-01(New Year's Day), and2027-07-04(Independence Day) in a single rule. - Payday Specials: Target the 1st and 15th of each month.
- Store Anniversary: Run a special rule on your store's annual milestone dates without having to recreate the rule every year.
- Holiday Sales: Select
4. Time (Daily Hours & Happy Hour)β
- Field Value:
time - Inputs:
Start Time(Dropdown: 12:00 am to 11:00 pm) andEnd Time(Dropdown: 12:00 am to 11:00 pm). - How It Works:
- Evaluates the current hour and minute of the day.
- Smart Overnight Roll-Over: If
End Timeis earlier thanStart Time(e.g., Start at10:00 pmand End at2:00 am), the validator automatically adds 24 hours to the end time. This ensures overnight sales work seamlessly without breaking at midnight!
- Best For:
- Lunchtime Specials: 15% off between
12:00 pmand2:00 pm. - Evening Happy Hour: Free shipping on orders placed between
6:00 pmand9:00 pm. - Night Owl Flash Sales: Extra 10% off between
10:00 pmand4:00 am.
- Lunchtime Specials: 15% off between
5. Days (Days of the Week)β
- Field Value:
days - Inputs: Multi-select dropdown containing all 7 days of the week (
Monday,Tuesday,Wednesday,Thursday,Friday,Saturday,Sunday). - How It Works: Checks whether the current day of the week matches any of the chosen days.
- Best For:
- Weekend Doorbusters: Select
SaturdayandSunday. - Midweek Boosters: Select
TuesdayandWednesdayto drive traffic during historically slow shopping days. - TGIF Deals: Select
Fridayfor weekly weekend kick-off discounts.
- Weekend Doorbusters: Select
π§ Multi-Tier Schedule Logic (AND vs. OR)β
The scheduling container (DateTimeContainer.vue) mirrors the plugin's multi-group condition architecture:
Inside a Group (+ And New Rule)β
All schedule conditions inside the same group must be satisfied simultaneously (AND logic).
Example: Weekend Evening Happy Hour
- Condition 1:
DaysβFriday, Saturday- Condition 2:
+ And New RuleβTimeβ6:00 pmto10:00 pmResult: The discount activates only on Friday and Saturday evenings between 6:00 PM and 10:00 PM. During weekday evenings or weekend afternoons, the rule remains dormant.
Across Groups (+ OR New Group)β
Meeting the schedule requirements of any single group triggers the discount (OR logic).
Example: Holiday OR Weekend Campaign
- Group 1:
DaysβSaturday, Sunday- Group 2 (
+ OR New Group):Specific Dateβ2026-11-27, 2026-11-30(Black Friday & Cyber Monday)Result: Shoppers receive the discount every regular weekend, plus on the designated Black Friday and Cyber Monday dates.
βοΈ Important: WordPress Site Timezoneβ
All date and time calculations in the validator rely on WordPress's configured timezone:
$now = current_time( 'timestamp' );
Always verify your store's timezone setting in WordPress Admin β Settings β General β Timezone.
- If your timezone is set to
UTC+0but your customers and warehouse operate inAmerica/New_York (EST/EDT), a scheduled midnight sale will activate 4β5 hours earlier than intended! - Set your timezone to your primary customer region or your business operating city (e.g.,
New York,London,Berlin,Tokyo).
π‘ Real-World E-Commerce Scheduling Strategiesβ
Strategy 1: The Black Friday & Cyber Monday 5-Day Blitzβ
- Goal: Run an automated storewide 25% discount starting at 12:00 AM on Black Friday and ending at 11:59 PM on Cyber Monday.
- Schedule Configuration:
- Type:
Date Time - Start:
2026-11-27 00:00 - End:
2026-11-30 23:59
- Type:
- Result: Fully hands-off execution. The discount turns on at midnight Friday and shuts off at the stroke of midnight Monday.
Strategy 2: "Night Owl" Midnight Flash Saleβ
- Goal: Clear slow-moving inventory by offering 20% off between 10:00 PM and 3:00 AM every night.
- Schedule Configuration:
- Type:
Time - Start Time:
22:00(10:00 pm) - End Time:
3:00(3:00 am)
- Type:
- Result: The plugin automatically handles the midnight crossover via its overnight roll-over calculation.
Strategy 3: Weekend VIP Free Shippingβ
- Goal: Provide free shipping on orders over $50 exclusively on Saturdays and Sundays.
- Rule Type: Free Shipping Method / Discount.
- Schedule Configuration:
- Type:
DaysβSaturday, Sunday
- Type:
- Rule Condition:
Cart subtotal > $50
- Result: Free shipping is only displayed at checkout on Saturdays and Sundays when the subtotal condition is met.
β Frequently Asked Questions (FAQ)β
What happens when a scheduled discount expires while a user is in the cart?β
When the customer proceeds to the checkout or updates their cart, WooCommerce recalculates totals. The validator checks current_time( 'timestamp' ), determines the schedule is no longer valid, and removes the discount prior to payment authorization.
Can I schedule different discounts for different days of the week?β
Yes. Create separate rules for each day (e.g., "Mega Monday 10% Off" with Days = Monday and "Footwear Friday 20% Off" with Days = Friday).
Does the countdown timer synchronize with the schedule?β
Yes. When you configure a promotional countdown timer badge or banner, you can set its end date/time to match the rule's date_time schedule for seamless customer urgency messaging.
If I leave the schedule blank, will the rule still work?β
Yes. An empty schedule means the rule has no time restrictions and will remain active 24/7 as long as the rule's status is toggled to Enabled.
Automate your promotional calendar with Discount Rules and Dynamic Pricing for WooCommerce PRO. Combine time schedules with user role pricing, BOGO tiers, and cart total rules!
π SEO Keywordsβ
Primary Keywords: WooCommerce discount scheduling, schedule dynamic pricing WooCommerce, WooCommerce time-based discounts, WooCommerce flash sale scheduler, happy hour discounts WooCommerce, weekend discount rules WooCommerce.
Secondary Keywords: WooCommerce Black Friday discount scheduler, timed promotions WooCommerce, WooCommerce coupon expiration date time, schedule free shipping WooCommerce, recurring discounts WooCommerce, overnight sale WooCommerce.