What we delivered
Recent updates and new features in plain English.
February 2026
- New
Stripe checkout wired for first revenue
Checkout now resolves correct prices from Stripe via recipe-specific lookup keys. No more hardcoded fallback amounts — if a price isn't configured, checkout fails safely instead of charging the wrong amount.
- New
30-day free trials for B2B recipes
TerraLedger, RootSchool, and PlotSpark ERP now offer a 30-day free trial. Your card is collected at checkout but not charged until the trial ends. After 30 days, Stripe automatically starts your subscription.
- New
Trial-ending email 3 days before you're charged
You'll now receive an email 3 days before your free trial ends, telling you exactly what you'll be charged and how to cancel or manage your subscription.
- Improvement
Stripe price sync tool for recipe pricing
New script reads all recipe pricing tiers and creates matching Stripe Products and Prices. Idempotent, supports dry-run mode, and uses lookup keys so checkout always charges the right amount.
- Improvement
Pricing increased to reflect value delivered
Prices raised 50–100% across all recipes following our Chapter 9 pricing review. Low prices signalled instability to B2B buyers — the new prices position PlotSpark as a serious, sustainable platform.
- Improvement
B2B free tiers replaced with 30-day trials
10 B2B recipes (TerraLedger variants, RootSchool, PlotSpark ERP) no longer have permanent free tiers. Councils and schools now get 30 days of full access, then convert to the Starter plan. Consumer recipes like RootBooker and RootScrum keep their free tiers.
- Improvement
6-month grandfathering policy — no permanent grandfather pricing
When prices increase, existing customers keep their current rate for up to 6 months. After that, everyone moves to the new pricing. This keeps revenue sustainable and pricing fair.
- New
Invoice history and team management in Settings
New pages at /settings/invoices and /settings/team. View and download past invoices, and manage team members with role-based access.
- New
Webhook delivery logs for developers
The developer webhooks page now shows delivery history, retry counts, and response times. You can also send test events to debug your integration.
- Fix
Billing test suite fully green — 174 tests, 0 failures
Fixed all pre-existing test failures in the billing service. Resolved ESM import issues with nanoid v5, TypeScript errors in SAP accounting integration, and a syntax error in widget definitions.
- New
Careers and Data Marketplace onboarding enabled
The Careers and Data Marketplace recipes now have complete onboarding flows guiding new users through initial setup.
- Improvement
49 new tests across billing, RootTrade, and grandfathering
Added 34 tests for the grandfathering policy, 15 tests for RootTrade backtesting strategies, plus 20 tests for trial checkout and email templates.
- New
110 new widgets fill every gap across the platform
Added 110 missing widget components across 17 services. Every recipe now has all the widgets it references — no more placeholder gaps or blank panels.
- New
RootDate: AI-powered dating recipe launched
New dating recipe with AI-powered compatibility matching, double opt-in consent, profiles, a discovery feed, and full platform integration including notifications, gamification, and analytics.
- New
RootShift: shift scheduling recipe launched
Shift scheduling is now live — manage rotas, swap shifts, and track availability. Includes API endpoints, aha moments, and full recipe integration.
- New
ERP recipe with Odoo comparison
New ERP recipe for small businesses with a marketing page, domain configuration, E2E tests, and a detailed buildability assessment comparing PlotSpark to Odoo.
- New
25 new interactive map widgets
Added 25 layered map widgets across 5 recipes — interactive site maps, zone overlays, and spatial data views powered by the Layers service.
- Improvement
Featured recipes now in a carousel with category filters
The homepage recipe showcase is now a swipeable carousel instead of a wall of cards. Filter by category to find the recipe for your industry, or swipe through all 10. Shows 3 at a time on desktop, 2 on tablet, 1 on mobile.
- Improvement
Recipe count shown for social proof
The 'View All' button on the homepage now shows the total number of recipes available, so you can see the breadth of the platform at a glance.
- Improvement
Schedule a Call moved next to 'Ready to get started?'
The booking form now appears right below the 'How it works' section so you can schedule a call without scrolling to the bottom of the page.
- Fix
Less whitespace on marketing pages
Reduced the large gap at the top of marketing pages. The hero section is now more compact and banners no longer flash a spinner before disappearing.
- Fix
5,765 missing translations added across 7 languages
Filled in 5,765 missing translation keys across English, German, French, Polish, Spanish, Welsh, and Italian. Fixed broken JSON in German, French, and Polish locale files that was causing crashes.
- Fix
All tests passing — zero failures
Resolved all remaining test failures across dashboard, auth, internationalisation, widget, and service tests. The full test suite now passes cleanly.
- Fix
Type errors fixed across all services
Resolved TypeScript errors in terraledger, social-service, billing, plotspark-intelligence, and other services. Clean compilation across the entire platform.
- Fix
Booking calendar fixed on iPad
Fixed the calendar layout that was broken on iPad and improved the booking page layout for tablet-sized screens.
- Fix
Widget styles now render correctly everywhere
Fixed an issue where some widget styles weren't loading. Tailwind now scans widget source files so all styles are included in the build.
- Fix
Removed placeholder G2 badge
The 'Coming soon on G2' rating badge has been removed from the homepage until real reviews are collected.
- Fix
Redundant floating call-to-action removed
Disabled the floating 'Schedule a Call' button that was duplicating the inline booking form further up the page.
- New
Automated refunds when you cancel
Cancel a subscription and any eligible refund is now processed automatically through the rules engine. No manual intervention needed.
- New
Garden snapshots kept for 6 months
RootPlan now saves snapshots of your garden layout every time you change it, and keeps them for 6 months. You'll get a heads-up before old snapshots expire.
- New
Full German and EU legal compliance
Impressum, accessibility statement, DPA, cookie policy, privacy policy, and terms & conditions are now available in German. All legal pages include company registration details and comply with EU regulations including the European Accessibility Act.
- Improvement
14-day no-quibble refund guarantee
Our terms now include a 14-day cooling-off period with a simple withdrawal form, plus the German VSBG dispute resolution declaration.
- New
Aha moment screenshots on marketing pages
Recipe marketing pages now show screenshots and videos next to each aha moment, so you can see exactly what the product looks like before signing up.
- Fix
Stability and crash fixes
Fixed a crash that could happen when environment variables were missing, resolved a layout issue with the skip-to-content link, and upgraded next-intl to v4 for better internationalisation support.
- Improvement
Faster, cleaner builds
Eliminated Turbopack warnings, fixed 2,188 widget type errors, and resolved build issues across shared packages. The platform now builds cleanly with zero TypeScript errors.
- New
Plot transfers with configurable pricing
Councils can now set transfer fees when tenants swap or hand over plots. Pricing is fully configurable per site.
- Improvement
Marketing content across all recipes
Every recipe now has clear descriptions of the problems it solves, the value it delivers, and how it compares to alternatives. Helps you pick the right recipe for your needs.
- New
7-language support across all domains
All 9 domains now support English, German, French, Polish, Spanish, Welsh, and Italian. Your language preference is remembered between visits.
- Improvement
Better SEO with hreflang tags
All pages now include hreflang alternate links and a multilingual sitemap, so search engines show the right language version to the right audience.
- Improvement
47 TerraLedger widgets polished to production standard
Every TerraLedger widget now has skeleton loading, error recovery, empty states with clear next steps, toast notifications, and full keyboard accessibility.
- New
Self-service vanity domain setup
You can now set up your own branded domain (e.g., yourcouncil.allotments.info) from the Settings tab without contacting support.
- Improvement
Improved rent calculator
The allotment rent calculator now includes UK regional comparisons, concession rate support, rod/perch units, and auto-calculates based on your site details.
- New
Per-recipe video embeds
Each recipe can now have its own explainer video on its marketing page.
- New
Personalised email sender identity
Emails now come from your account's name and address, not a generic PlotSpark mailbox.
- New
6 gotcha moment widgets for the marketing funnel
Interactive calculators on marketing pages now link directly to the matching recipe, converting interest into signups.
- New
RootSchool, RootFaith, RootBooker, RootVibe, and RootSign complete
Five more recipes are now production-ready with full dashboards, onboarding flows, E2E tests, and widget test suites.
- New
TerraLedger dashboard with 26 widgets across 4 tabs
Council officers now have a full daily workflow dashboard: plots and tenants, finances, compliance, and communications all in one view.
- Improvement
RootPlan and RootLytics dashboards redesigned
RootPlan now has 2 tabs with 5 tested widgets. RootLytics has SaaS metrics tabs with full widget and E2E tests.
- Improvement
15 widgets now have empty states with clear next steps
When a widget has no data yet, it now tells you exactly what to do first instead of showing a blank screen.
- New
Guided onboarding for new users
First-time users now see a step-by-step onboarding wizard that creates their first site, garden, or queue as they go. No more staring at an empty dashboard.
- Improvement
Full user funnel tracking
We now track the complete journey from landing page through to paid conversion, helping us find and fix drop-off points.
- Improvement
Platform recipe config (for recipe builders)
Recipes can now declare optional platform config (AI Team, retention tools, Smart Inbox) so one implementation serves many recipes with recipe-specific context. No change to end-user UI.
- New
Billing wired end-to-end with Stripe
Subscription management, usage dashboards, and recipe checkout now work end-to-end. You can subscribe, see your usage, and upgrade plans from inside the app.
- New
Usage limits and upgrade prompts
Free-tier users now see their usage against limits (e.g., collections, map layers) with a clear prompt to upgrade when they need more.
- Improvement
Health monitoring and status dashboard
A production status dashboard with automated alerting so we know about issues before you do.
- New
2-year billing option and improved waitlist experience
You can now choose a 2-year billing period with locked pricing. Waitlist signups get clearer confirmation emails, and we've expanded E2E tests for critical user journeys (tenant-to-plot, recipe subscription, checkout).
January 2026
- Fix
Security hardening: httpOnly cookies
Authentication tokens moved from localStorage to httpOnly cookies, eliminating a class of XSS vulnerabilities. Your sessions are now more secure.
- Improvement
Structured logging across the platform
Replaced all console.log/error/warn calls with structured pino logging. Better diagnostics when things go wrong, and no accidental data leaks in browser consoles.
- Fix
33 widget TODOs resolved
Action handlers and API integrations that were stubbed out are now fully wired up across 33 widgets.
- New
Salon waitlist auto-fill on cancellation
When a salon booking is cancelled, the next person on the waitlist is automatically offered the slot.
- New
Feedback & Roadmap SaaS recipe
New recipe for collecting user feedback with voting, a public roadmap, and changelog. Dogfooding it ourselves.
- New
Bring Your Own Stripe Key (BYOK)
You can now connect your own Stripe account for direct payouts instead of using PlotSpark's shared payment processing.
- New
Role-based access control
Admins, officers, and members now see different features based on their role. Permissions are enforced across all recipes.
- Improvement
Accessibility improvements
ARIA labels, keyboard navigation, and focus indicators added across all core widgets. Working towards WCAG AA compliance.
- Improvement
CDN widget delivery architecture
Widgets are now pre-built and served from the CDN instead of being bundled with the main app. Build times dropped from 14+ minutes to under 4 minutes.
- New
TerraLedger launch preparation
Platform-wide RBAC, comprehensive launch checklist, and all TerraLedger domains enabled for production deployment.
- New
Onboarding flows for 8 Root* recipes
RootPlan, RootLytics, RootScout, RootScan, RootMarks, RootSchool, RootFaith, and RootBooker now guide you through setup when you first arrive.
- New
What we delivered: release notes are here
You can now see what we ship on a dedicated changelog page and in email updates.
- New
You can set a daily limit on bookings
Stops your calendar from being overbooked when you have a cap.
- Improvement
Build reliability and memory fixes
Pre-compiled recipe manifest cuts memory usage by 99.1%. Removed ignoreBuildErrors — all TypeScript errors must be resolved before deploy.
- Improvement
Free tier adjusted to 10 plots
The free plan for TerraLedger now includes up to 10 plots (previously 50), better reflecting the value of the platform.
- New
Core auth flows wired up
Password reset, profile updates, and billing management now work end-to-end from the UI.
- New
All 40 recipes finalised for MVP
Every recipe has complete pain points, value propositions, competitive advantages, bundle descriptions, dashboard layouts, and onboarding flows.
