The controlling setting depends on the tool; Invoice Ninja uses Start Date for the first invoice. Invoice Ninja
Recurring invoice dates: the direct answer by tool
The first invoice start date determines when the initial bill is generated in a recurring series. In Invoice Ninja, the Start Date defaults to today, which is when the first invoice goes out. If you need the first bill to land on a particular day, you can set this date in the future according to Invoice Ninja. This setting specifically controls the generation of the first invoice in the sequence. It does not automatically define the payment due date for that invoice, which is calculated separately.
Different billing tools handle this initial date differently. Some may use a subscription anchor, while others allow a custom start date within a series. For Invoice Ninja, the key distinction is that the Start Date is a specific field you can adjust before the series begins. The Start Date defaults to today, and that is when the first invoice goes out. If you change it, the first invoice waits until that specified future date.
It is not the same as the payment deadline, which is a separate calculation based on the invoice issue date and your chosen payment terms.
Key takeaways for what determines recurring invoice dates in my billing tool?
Recurring invoice dates are not a single setting. They split into generation dates and payment deadlines, each controlled by different rules.
Which settings apply to subscriptions and invoice series
Square’s recurring invoice series configuration allows you to define three distinct date parameters within a single setup. You can include a custom start date, end date, and recurring invoice due date, according to Square.
For example, you might set the start date for the first of the month but choose a due date that falls ten days later.
Stripe anchors for monthly, weekly and yearly billing
The controlling setting for recurring dates in Stripe's subscription scheduling is the billing cycle anchor date. This anchor determines when the invoice generates within the billing cycle. For monthly cycles, the anchor date sets the specific day of the month for billing. A monthly subscription with a billing cycle anchor date of September 2 always bills on the 2nd day of the month, according to Stripe. This rule applies to when the subscription bills and when it renews.
When the anchor date falls on a day that does not exist in a shorter month, Stripe adjusts the billing date to the last day of that month. A monthly subscription with a billing cycle anchor date of January 31 bills the last day of the month closest to the anchor date, so February 28 (or February 29 in a leap year), then March 31, April 30, and so on, according to Stripe. This behavior ensures the subscription renews at the end of the month, even in months with less than 31 days. Specifically, if a month has less than 31 days, the subscription renews on the last day of that month, according to Stripe. To create a monthly subscription that renews at the end of the month, set day_of_month to 31, according to Stripe.
Weekly cycles use a day-of-week anchor rather than a specific calendar date. A weekly subscription with a billing cycle anchor date of Friday, June 3 bills every Friday thereafter, according to Stripe. The anchor day of the week remains constant across all subsequent billing cycles.
Yearly cycles use a month and day combination to set the anchor. To cycle yearly subscriptions on the first of July, create a yearly subscription with a month of 7 and day_of_month of 1, according to Stripe. This setting fixes the renewal date to that specific month and day each year.
These anchor rules define when the invoice is generated. Check the subscription settings to confirm the anchor date matches your intended billing schedule.
First-run dates, payment deadlines and queue exceptions
In Recurring Invoices | Invoice Ninja, the generation schedule and the payment deadline operate as two distinct controls. The Due Date setting controls how the due date on each generated invoice is calculated from the day it's issued, for example fourteen days after issue, according to Invoice Ninja. This is separate from the schedule — it only affects when payment is expected on each individual invoice, according to Invoice Ninja. You can set the recurring interval to monthly while the client’s payment window remains fixed at fourteen days from the specific day the invoice appears. Only the day-count offset stays fixed, while the calendar deadline moves when the generation date moves, because the due date is calculated from the day the invoice is issued, for example fourteen days after issue.
When managing the first-run date for a recurring series, consider the processing load on the platform. In FreshBooks, the documentation notes that if your recurring series is set to generate invoices on the first of every month, it may take longer to generate as there is a larger queue, according to FreshBooks. The source suggests that changing the generation date to the second of the month or a different date is a good way to avoid this, according to FreshBooks. Changing the generation date to the second of the month or a different date is a good way to avoid the longer queue in FreshBooks.
The queue warning applies specifically to the generation process, not the payment terms.
If you use FreshBooks, consider shifting the generation date to the second to see if the invoice appears more quickly. If you use Invoice Ninja, verify that your Due Date setting matches your intended payment window, such as fourteen days after issue, independent of the generation schedule. Record the specific generation date and the specific due date for each client to ensure they remain distinct in your records.
Does the generation date change the payment deadline?
The day-count offset does not change, but the calendar deadline does, because the due date is calculated from the day the invoice is issued, for example fourteen days after issue. The Due Date setting controls how the due date on each generated invoice is calculated from the day it's issued, according to Invoice Ninja.
Why might an invoice take longer to generate on the first?
If your recurring series is set to generate invoices on the first of every month, it may take longer to generate as there is a larger queue, according to FreshBooks. Changing the generation date to the second of the month or a different date is a good way to avoid this, according to FreshBooks.
Recurring date rules reference table by publisher
The following table summarizes the specific date rules and examples documented for each publisher. Each row lists the rule type, the documented behavior or example, and the source.
| Publisher | Rule Type | Documented Behavior or Example | Source |
|---|---|---|---|
| Stripe | Monthly anchor | A monthly subscription with a billing cycle anchor date of September 2 always bills on the 2nd day of the month. | according to Stripe |
| Stripe | Short month renewal | A monthly subscription with a billing cycle anchor date of January 31 bills the last day of the month closest to the anchor date, so February 28 (or February 29 in a leap year), then March 31, April 30, and so on. | according to Stripe |
| Stripe | Weekly anchor | A weekly subscription with a billing cycle anchor date of Friday, June 3 bills every Friday thereafter. | according to Stripe |
| Stripe | Last day anchor | Set day_of_month to 31 to create a monthly subscription that renews at the end of the month, even in months with less than 31 days. | according to Stripe |
| Stripe | Short month exception | If a month has less than 31 days, the subscription renews on the last day of that month. | according to Stripe |
| Stripe | Yearly anchor | To cycle your yearly subscriptions on the first of July, create a yearly subscription with a month of 7 and day_of_month of 1. | according to Stripe |
| Stripe | Unspecified anchor time | For example, if you create a subscription using billing_cycle_anchor_config at 5 PM EST without specifying the hour, the time is recorded in the system as 10 PM UTC. | according to Stripe |
| Stripe | Two month interval | For example, assume that you create a two-month interval subscription in February and you cycle it at the end of every month by setting day_of_month to 31. | according to Stripe |
| Invoice Ninja | First invoice start date | The Start Date (defaulting to today) is when the first invoice goes out; set it in the future if you need the first bill to land on a particular day. | according to Invoice Ninja |
| Square | Separate series dates | You can include a custom start date, end date, and recurring invoice due date. | according to Square |
| Invoice Ninja | Payment deadline | The Due Date setting controls how the due date on each generated invoice is calculated from the day it's issued (for example, fourteen days after issue). | according to Invoice Ninja |
| Invoice Ninja | Schedule distinction | This is separate from the schedule — it only affects when payment is expected on each individual invoice. | according to Invoice Ninja |
| FreshBooks | First day queue | Heads Up: If your recurring series is set to generate invoices on the first of every month, it may take longer to generate as there is a larger queue. | according to FreshBooks |
| FreshBooks | Alternative date | Changing the generation date to the second of the month or a different date is a good way to avoid this. | according to FreshBooks |
Use this table to compare how each tool handles specific date scenarios. Note that Stripe’s documentation covers subscription billing cycles, while Invoice Ninja, Square, and FreshBooks focus on recurring invoice examples and series. When setting up a new recurring bill, identify which rule type applies to your specific need, such as a monthly anchor or a custom due date. For more on how these tools handle charging mechanics, see Recurring invoices: how 5 apps handle charging.
Keep a record of the date settings you selected
Tracking the specific dates you configure for each client prevents confusion between when a bill is created and when payment is expected. A simple log helps you verify that the generation schedule and the payment deadline are set intentionally, rather than relying on memory or tool defaults. For clients using FreshBooks, if you notice that invoices generated on the first of the month take longer to appear, changing the generation date to the second of the month or a different date is a good way to avoid this, according to FreshBooks. Recording this adjustment in your notes column ensures you can trace why a particular date was chosen for that client’s series.
Document the date settings for your existing recurring bills. Record the first generation date and the payment due date offset separately for Invoice Ninja, where the due date is separate from the schedule, and list Square's custom start date, end date, and recurring invoice due date. If you change a date to address a queue delay or align with a client’s cash flow, note the reason in the final column. This record serves as a reference when you review billing accuracy or when you need to explain a date discrepancy to a client.
Related guides
FAQ: calendar exceptions and client payment dates
What determines the dates on recurring invoices?
The controlling setting depends on the specific tool you use. For instance, the Start Date determines when the first invoice goes out, with today as the default setting according to Invoice Ninja. You can set this date in the future if you need the first bill to land on a particular day according to Invoice Ninja.
Does Stripe's last-day renewal rule apply to my monthly subscription?
If a month has less than 31 days, the subscription renews on the last day of that month according to Stripe. For example, a monthly subscription with a billing cycle anchor date of January 31 bills the last day of the month closest to the anchor date, so February 28 (or February 29 in a leap year), then March 31, April 30, and so on according to Stripe.
How is an Invoice Ninja payment due date different from its first invoice date?
The Due Date setting controls how the due date on each generated invoice is calculated from the day it's issued, for example, fourteen days after issue according to Invoice Ninja.
Can I choose separate start, end and due dates in Square?
Yes, you can include a custom start date, end date, and recurring invoice due date according to Square. This allows you to define the duration and payment expectations for the series independently according to Square.