0+
October 1, 2026
July 29, 2026
Client Octopus is an all-in-one client workflow plugin for WordPress freelancers and agencies.
Capture leads from your website, let prospects book a call with your calendar synced automatically, create professional proposals with e-signatures and flexible pricing, send standalone or recurring invoices, collect payments through Stripe or PayPal, and manage projects and client delivery through a branded client portal.
Instead of juggling separate tools for lead capture, scheduling, proposals, invoicing, payments, and client delivery, Client Octopus brings the whole workflow together inside the WordPress site you already own.
It connects the key stages in one place: lead capture, call booking with calendar sync, proposals with e-signatures, packages and pricing tiers, standalone and recurring invoices, Stripe and PayPal payments, a branded client portal, projects with milestones and approvals, file sharing and messaging, automated reminders, and webhooks to thousands of other tools.
Most freelancers and agencies juggle several separate tools to run their client workflow — a lead form, a scheduling app, a proposal tool, an invoicing app, and a payment link. Client Octopus replaces all of them with a single WordPress plugin.
Your core client data — leads, proposals, invoices, bookings, and projects — is stored in your own WordPress database rather than locked inside a separate SaaS platform. Optional integrations, like payment processing, calendar sync, or AI writing tools, only send the specific data required for the feature you’ve chosen to use.
Every feature, broken down by plan, is listed under Features below.
Client Octopus is designed specifically for WordPress freelancers and agencies who want to manage proposals, invoices, and client delivery without relying on external SaaS platforms.
Client Octopus is designed to run primarily within WordPress. Some optional features connect to third-party services, and these connections are only used when the relevant feature is enabled or used:
Stripe
Used to process client payments on proposals and invoices. The plugin creates a Stripe Checkout Session on your account and redirects the client to Stripe’s hosted page — card details are entered on Stripe’s servers and never stored in WordPress. Your API keys are held in the WordPress options table and sent only to Stripe. If auto-charge is enabled on a recurring profile, the first payment also saves a customer ID and payment method ID (never the card number) so later invoices can be charged without the client re-entering it.
PayPal
An alternative to Stripe, used if you select it as your payment provider. The plugin creates a PayPal order on your account and redirects the client to PayPal’s hosted page — payment details are entered on PayPal’s servers and never stored in WordPress. Your Client ID and Secret are held in the WordPress options table and sent only to PayPal. If auto-charge is enabled on a recurring profile, the first payment also saves a Vault ID, customer ID and the payer’s email so later invoices can be charged without re-approval.
Client Octopus Relay
The AI writing tools and Google/Microsoft Calendar Sync route through a relay operated by the plugin author. It authenticates your licence and either forwards the request to an AI model or manages your connected calendar. A plugin on thousands of sites cannot register its own Google/Microsoft OAuth application per install, so a single relay-owned app is used and your calendar tokens are held on the relay rather than in your WordPress database. Both features run only when you use an AI action, or connect Google Calendar or Microsoft 365 in Settings.
Apple iCloud (CalDAV)
If you connect Apple iCloud in Settings, the plugin talks to Apple’s calendar servers directly using the Apple ID and app-specific password you provide — unlike Google/Microsoft, this does not go through the relay. The password is encrypted before being stored. Each sync reads busy time (start/end and event title) and creates or deletes an event when a booking is made or cancelled. Only runs if you connect an account.
Cloudflare Turnstile
If you enable Turnstile as the CAPTCHA provider for the lead capture form ([clientoctopus_lead_form] shortcode), Client Octopus verifies each form submission with Cloudflare before saving it, to block automated spam. This only runs when Turnstile is configured in Settings — it is off by default.
Frankfurter (Exchange Rate Data)
If you have set a Reporting Currency in Settings that’s different from GBP, Client Octopus fetches daily exchange rates from Frankfurter (a free, keyless exchange-rate API backed by European Central Bank reference rates) to convert proposal, invoice, and payment figures for display in Analytics. This only starts once you’ve actually chosen a non-GBP Reporting Currency — it never runs on its own. No personal data, licence key, or site information is ever sent — only a request for the current rates between GBP and the plugin’s other supported currencies. Rates are cached locally for up to 24 hours. This never affects Client Detail, which always shows each client’s real billed currency unconverted.
Freemius
Client Octopus uses Freemius to manage plan licensing, activation, and upgrades. When you activate a licence key, the site URL, plugin version, and licence key are sent to Freemius to verify your plan and enable the correct feature set.
Client Octopus stores your client data in your own WordPress database. Nothing about your clients is sent anywhere except through the optional integrations described under External Services above, and only when you enable and use them.
What is stored about the people you work with
Client records (name, email, company, phone), leads submitted through the lead capture form, booked calls (name, email, phone and any message), the typed name, IP address and device recorded when a client e-signs a proposal, messages a client sends you through the portal, comments they leave on approval requests, and a record of any reminder emails they have unsubscribed from.
Responding to a privacy request
Client Octopus plugs into WordPress’s own Tools Export/Erase Personal Data. Searching there by a person’s email address covers their client record, leads, booked calls, proposal signatures, project messages, approval comments and email preferences — you do not need to go through the database by hand.
An export returns everything held about that person. An erasure is handled differently depending on the record, because some of it you are legally required to keep:
Files you upload to a project are your own deliverables rather than something the client supplied — the portal is download-only — so they are not included in an erasure.
Removing everything
Settings Advanced has an option to delete all Client Octopus data when the plugin is deleted. It is off by default, so removing the plugin normally leaves your data in place in case you reinstall.
This is a summary rather than legal advice. If you handle personal data in the EU or UK, you remain the data controller for the client information you store.
clientoctopus folder to /wp-content/plugins/Yes. On the Pro and Agency plans, you can accept payments on proposals and standalone invoices via either Stripe or PayPal — choose whichever gateway you prefer in Settings. Clients always see a single “Pay Now” button that routes to whichever gateway you’ve configured. The exception is a proposal set to Recurring billing — it has no direct payment option; billing happens through the recurring invoice created when the client accepts, which can itself be set to auto-charge (see “Can I set up automatic recurring invoices?” below) or paid manually each cycle.
Yes, on the Pro and Agency plans. Clients sign in to a branded portal either with an emailed magic link or with a password they set — no WordPress account is needed either way.
The portal differs by plan. On Pro, clients see their proposals, invoices and payments. On Agency it also covers projects, milestones, approvals, file downloads and messaging.
Yes. The Agency plan supports up to 10 team members, each assigned a role (Admin, Editor, or Viewer).
Yes, on all plans. Embed the lead capture form on any page with the [clientoctopus_lead_form] shortcode. You choose which fields to show and require, add a consent line, and optionally enable Cloudflare Turnstile CAPTCHA and submission rate limits to help prevent automated spam. Every submission lands in a dedicated Leads admin screen where you can track status, mark as contacted, archive, or convert a lead straight into a client record.
Yes, on the Pro and Agency plans. Add the [clientoctopus_booking_form] shortcode to any page and visitors can book a call based on your configured weekly availability, buffer time, minimum notice, and maximum booking window. Both you and the client get a confirmation email with a calendar invite, followed by a 1-hour reminder.
Yes, on the Pro and Agency plans. Connect Google Calendar, Microsoft 365/Outlook, or Apple iCloud in Settings. Once connected, existing events on that calendar automatically block matching slots in your booking availability, shown with their real event title — and every call booked through Client Octopus is pushed out as a real event (including your meeting link) on every calendar you’ve connected, so you never have to add it yourself.
No. Client Octopus licences are single-site only.
No. Client Octopus runs directly inside WordPress and doesn’t require a separate SaaS platform to work. Optional integrations — Stripe or PayPal for payments, Google Calendar, Microsoft 365, or Apple iCloud for calendar sync, AI writing tools, Cloudflare Turnstile for lead form spam protection, and Frankfurter for Analytics currency conversion — only connect when you explicitly enable and use that feature. Freemius handles licensing for the paid plans. Every one of these is described in full under External Services below.
Yes, within a monthly allowance — 100 AI requests per month on Pro, and 500 per month on Agency. There is no separate AI bill and you don’t supply your own API key; the allowance is part of the plan. Your current usage against the allowance is shown on the Plan & Usage screen.
Yes. When a client accepts a proposal, they are prompted to enter their name and confirm a checkbox in a signing modal. A signing certificate is saved to the proposal record and shown in the admin, recording who signed, when, the IP address and device they signed from, and a fingerprint of the proposal exactly as it stood at that moment — so if the proposal is edited afterwards, the certificate says so rather than silently appearing to cover the new version.
Note this is a record of acceptance, not a qualified or notarised electronic signature in the sense of eIDAS or the ESIGN Act. It is the same category of evidence most proposal tools provide.
Client Octopus is a self-hosted WordPress plugin, not a SaaS platform — your proposals, invoices, and client data are stored in your own WordPress database. Pro is $9.99/month or $89/year, and Agency is $24.99/month or $229/year, with no per-user charges and no limits on the number of clients or proposals you manage.
Yes. Standalone invoices are available on all plans. Create an invoice, assign a client, add line items with VAT and discount options, and send it directly. Free plan invoices can include your own payment instructions (e.g. bank transfer details) in the Notes field; Pro and Agency invoices can additionally show a “Pay Now” button (Stripe or PayPal, whichever is configured) on the client’s invoice page.
Twenty: British Pound, US Dollar, Euro, Canadian Dollar, Australian Dollar, Japanese Yen, Swiss Franc, New Zealand Dollar, Swedish Krona, Norwegian Krone, Danish Krone, Singapore Dollar, Hong Kong Dollar, Indian Rupee, Polish Zloty, Czech Koruna, Brazilian Real, Mexican Peso, South African Rand and South Korean Won. Set a Default Currency in Settings and new proposals and invoices open in it; you can still change the currency on any individual record. Analytics converts all of them into one reporting currency using daily exchange rates.
Partly. All emails, the settings and plan screens, and the public booking and lead capture forms use translatable text, and a translation template (.pot) ships with the plugin. The React-based admin screens, the client portal and the client-facing proposal view are not yet translatable — their text is prepared for translation but the catalogues do not load, so they still display in English.
Yes. Reminder emails and testimonial requests carry an unsubscribe link, and a preference page where the client can switch each type on or off. Essential emails are never affected — proposals, invoices, payment receipts, booking confirmations and portal sign-in links always send, because they concern work already agreed.
Use WordPress’s own Tools Export/Erase Personal Data and search by the person’s email address. Client Octopus covers client records, leads, booked calls, proposal signatures, project messages and approval comments. See the Privacy section below for exactly what an erasure deletes and what it keeps.
Yes, on all plans. Create a recurring invoice profile for a client, choose weekly, monthly, quarterly, or yearly billing, and Client Octopus automatically generates and sends a fresh invoice each cycle. By default the client pays each one manually via the same Pay Now flow as any other invoice. You can also mark a proposal itself as Recurring — accepting it automatically creates the recurring profile for you, with no manual setup.
On the Pro and Agency plans, you can additionally turn on auto-charge for a profile: the client’s first invoice is still paid manually (which securely saves their Stripe or PayPal payment method), and every invoice after that is charged automatically with no action needed from the client. If a charge is declined, both you and the client are notified and it’s retried a few times before the profile pauses itself so you can follow up.
Release notes for 1.3.1 and earlier are available in the plugin’s development history.
| Version | Download | Type |
|---|---|---|
| 1.4.1 | Download | Stable |
| 1.4.0 | Download | Stable |
| 1.3.2 | Download | Stable |
| 1.3.1 | Download | Stable |
| 1.3.0 | Download | Stable |
| 1.2.0 | Download | Stable |
| 1.1.3 | Download | Stable |
| 1.1.2 | Download | Stable |
| 1.1.1 | Download | Stable |
| 1.1.0 | Download | Stable |
| 1.0.1 | Download | Stable |
| 1.0.0 | Download | Stable |
| Development | Download | Trunk |