You run a subscription service. Your invoicing software says it handles recurring revenue. You tick the box, assume it's solved, and move on. Then, three months in, you realize the software isn't actually stopping unpaid invoices from renewing, you have no idea which customers are about to churn, and when a payment fails, the system doesn't retry—it just stops. That's the gap between what "recurring invoicing" sounds like and what most platforms actually deliver. FreshBooks and Xero both claim to handle recurring revenue. They don't. They solve different pieces of a larger problem, and for a subscription-first business, neither does enough on its own. What FreshBooks Actually Does With Recurring Invoices FreshBooks was built with service businesses in mind, which means recurring invoicing got native attention early. Here's what it does: Auto-generates invoices on a schedule. Weekly, monthly, quarterly, yearly—pick the cadence and FreshBooks creates the invoice automatically. Builds in payment retry. When an invoice fails to pay, FreshBooks can retry after 3 days, then 7 days. Not sophisticated, but better than nothing. Links to payment processing. Stripe and PayPal integrations mean the invoice can trigger a payment attempt directly, not just sit as a bill. Tracks payment status natively. You see which invoices paid, which are overdue, which are pending next billing cycle. For a 20-person agency that invoices the same 10 clients monthly, FreshBooks closes the loop. It's genuinely useful. But FreshBooks doesn't tell you: Which customers are at risk of churning (based on payment friction, engagement, or failed billing attempts). Lifetime value of a subscription, net of refunds and downgrades. Cohort retention rates or expansion revenue by segment. How to handle partial refunds, prorated credits, or mid-cycle downgrades without manual re-invoicing. Those gaps require either a separate subscription management platform (like Stripe Billing or Chargebee) or a larger all-in-one stack. What Xero Requires a Plugin to Do Xero is built for accountants and tax compliance, not customer billing. "Recurring" in Xero's world means repeating the same bill shape—same line items, same amount—at intervals. But it's not connected to payment processing by default. Native Xero recurring invoices: Create a template that auto-generates invoices on schedule. Post to accounts receivable automatically. Do nothing to collect payment—that's your job. If you want Xero to actually retry failed payments, send automated payment reminders, or update a subscription status when a payment lands, you need third-party add-ons: Stripe via Xero integration: Syncs payments back into Xero, but doesn't manage subscription logic. Third-party subscription managers: Zapier, Make (formerly Integromat), or specialist plugins like Chargebee or Subbly, each adding $20–$100+ per month and manual workflow management. For an accountant reconciling books, Xero's recurring invoice is a time-saver. For a subscription business, it's a starting point that still requires you to solve the hard problems elsewhere. Neither Handles Churn or Dunning Without Add-Ons Here's the core friction: both platforms assume invoices are simple and payment friction is acceptable. Churn forecasting: Neither FreshBooks nor Xero learns from failed payments, engagement drops, or usage patterns to tell you "this customer is likely to cancel next month." You're left manually reviewing overdue invoices and hoping you catch them in time. Smart dunning: When a payment fails, the native behavior in both is limited. FreshBooks retries twice, then gives up. Xero doesn't retry at all. Neither intelligently spaces retries based on customer segment, payment method, or time zone. Neither attempts an alternative payment method (debit card if credit card fails, for example). Both require a separate dunning platform—like Chargify, Recurly, or Stripe Billing—to do that properly. Proration and downgrades: If a customer mid-cycle wants to downgrade from a $99/mo to a $50/mo plan, both platforms require manual invoicing or outside calculation. Neither automates the credit, the prorated charge, or the updated billing cycle. For a subscription business, "recurring invoicing" is the billing part of a much larger problem. The hard parts—predicting churn, retrying intelligently, and adapting to mid-cycle changes—still need separate tools. Why These Gaps Exist FreshBooks was built for services: projects, time tracking, and hourly billing. Recurring invoicing came later as a feature request, not a core design. The payment retry logic is basic because agency customers tolerate a phone call now and then. Xero was built for bookkeeping: reconciliation, tax reporting, and regulatory compliance. Recurring invoicing is there to reduce accounting busywork, not to manage customer relationships or subscription health. The lack of payment automation reflects that. Neither platform was architected from the start around subsc