What shipped

Every release, in plain language.

Steerd ships continuously. Each entry below is one release, written for the person doing the work rather than the person who wrote the code.

Invoicing

  • E-invoices can now include buyer identifiers, buyer order references, delivery location identifiers, delivery names, delivery dates, and delivery addresses required by retail buyers.
  • New invoice drafts now take their issue date from the day they are finalized unless you explicitly set the date.
  • The invoice finalization confirmation now shows the PDF that is about to be issued.
  • Invoice PDFs now print decimal separators correctly for amounts that have a 7 before the separator.
  • Invoice number range prefixes now reject unsupported characters and leading or trailing spaces when edited.

Clients and projects

  • Archiving a project or taking it out of the archive no longer fails with an error that left the project where it was.
  • Contact phone numbers, email addresses, and addresses are now edited in one list per type, and marking one as Primary no longer moves or clears the row.
  • Contacts can now be added to or removed from organizations from organization details and organization forms without deleting the contact.
  • Organization names now show on project, contact, employee, and dashboard pages even when you have more than 50 organizations, instead of a raw ID, a dash, or nothing, and the organization pickers in project and contact forms now find every organization.
  • The project Source dropdown now labels XING and freelancermap correctly and lists Other last.
  • Refreshing an organization's icon now gives up after about 25 seconds at most instead of up to 80, and two overlapping refreshes can no longer delete the icon that was just saved.

Documents

  • The upload dialog no longer scrolls sideways when a selected file has a long filename.
  • Steerd no longer loads images linked from a Markdown file preview until you click Load images, and then only for that file. Project descriptions no longer load images at all and show a text placeholder instead.

CVs

  • Downloaded CV PDFs now extend colored bands all the way to the paper edge, removing thin white gaps.
  • CV drafts now better protect recent edits during autosave, reloads, tab closes, navigation, and out-of-order save responses. An autosave also no longer collapses the entries you have open.
  • Downloaded and emailed CV PDFs now show the portrait of a CV created through the public API that refers to its uploaded photo by URL only, as the preview already did.
  • New Letterhead CV template: colored header and footer bands repeat on every printed page, a narrow left column labels each section, and a third color fills the headings. It shows entry logos, writes months out in full, and shows an Experience or Projects section whose entries have no text as a compact grid of cards.
  • CV photos in the CV list now appear as circular person avatars instead of rounded file tiles.
  • Spotlight pictures now appear in downloaded and emailed CV PDFs, teammates who can open the CV see them, and a picture you replace or remove is deleted when you save, unless the published version or another CV still uses it.
  • Work and project entries in a CV can now carry a company or project logo on paid plans. The Letterhead template shows it in the preview and in downloaded PDFs, and the Show logos switch turns logos off for a CV.
  • CVs can now include a Spotlight section with an image, title, subtitle, description, image position, and optional border.
  • CV skills and languages now support configurable rating scales, level pickers, layouts, and readable rating marks across templates.
  • CVs can now set a document language for their headings and dates, rename section headings, and adjust each section's settings in its own Customize dialog. Saving in the editor now keeps settings that were stored through the API and have no field in the editor.
  • Individual entries in repeatable CV sections can now be hidden without deleting them.
  • CV project entries now print the client or organization, your role, and the kind of project in previews, PDFs, and Word exports, and the project editor explains what each field is for.
  • The CV template picker now opens with a full-size preview and applies a template only after you confirm the choice.
  • Dragging a CV section now shows a compact placeholder instead of a large gap, making section reordering easier to follow.

Travel and expenses

  • Travel expenses now include the German 2025 foreign per diem table and US GSA CONUS locality rates for FY2025 and FY2026.

Inbox and email

  • The inbox now includes Inbox and Sent folder views, a steadier header, and a phone layout where conversations open on their own page with Back returning to the list.
  • The mail composer now opens in a window you can minimize, and you can write new messages from the inbox. Replies are saved as drafts, and you can add Cc and Bcc and attach files from your computer, from Files, or a CV.
  • A newly connected IMAP mailbox now reads only its most recent messages, and inbox search covers the whole folder on the server. If a mailbox fails, hovering its status in Integrations shows why, and Steerd retries it automatically at growing intervals.
  • Mail in your Sent label or folder now counts as sent even when you sent it from an alias. A queued send whose mailbox was disconnected now goes out through a connected mailbox when you retry.
  • When an invoice or inbox message fails to send, Steerd now tells you why if the reason is known, and where a setting fixes it, the invoice send dialog links to that screen.

Developer platform

  • The public REST API and GraphQL API can now fetch a single task, activity or assignment by ID, and MCP gains tools to fetch a single activity or assignment.
  • Invoice, travel report, timesheet and data processing agreement confirmation PDFs now render in separate worker threads, so one render is less likely to slow down other requests.
  • The assistant now shows its approval card only once the whole proposal is ready, and the card also names fields a change would clear by leaving them out. It starts each turn with the tools of the current screen, and with OpenAI and compatible providers it tells you when a conversation has grown too long.

Account and billing

  • Onboarding answers now have a better chance of being saved when you reload, close a tab, or leave the page.
  • Signing up with email now includes a Cloudflare Turnstile check that helps keep automated spam accounts out.
  • A team owner can now hand the team over to another current member.
  • Owners can now list and create download links for export archives that remain available after a team is deleted, within the retention window.
  • Sign-up confirmation emails now list the legal documents you accepted and their version dates, with links to the current versions, instead of attaching them. Order confirmation emails include the documents as PDF attachments.
  • AI credentials without a name now open with the provider name filled in. If Save is blocked, the form identifies the field preventing it.

Fixes and polish

  • More web app API refusals now show translated messages in the app instead of the server's English message.
  • The web app now has a dark mode that follows your system by default, and under Settings, Profile you can pick Light, Dark or System for this device. With reduced motion turned on, menus, tooltips, dialogs and side panels now fade instead of zooming or sliding.
  • Help links beside page titles now align with the title instead of sitting below it.

Invoicing

  • On mobile, you can now create and edit invoice drafts in a guided editor and preview the real invoice PDF before issuing it.
  • You can now create invoices through a step-by-step wizard, choose the client within the flow, and reopen existing drafts in the wizard.
  • You can now send invoices and payment reminders from Steerd, keep a timeline of those sends and reminders, avoid duplicate sends after a lost response, and see the latest send or reminder on the invoice list.
  • Invoice settings now support configurable number patterns, numbering tokens inserted at the cursor, per-client prefixes, per-prefix counters, one save across routed settings sections, and next numbers tied to the correct year and series.
  • Invoice PDFs and e-invoices now include configurable seller footer disclosures, register details, legal representatives, small-business disclosures, and valid XML text handling, and the finalize checklist accepts the Kleinunternehmer identification number where it applies.
  • You can now set an invoice service period as a day, month, custom range, or none, with better phone layout, safer navigation away from drafts, and restored dates when changing back from None.
  • Steerd now refuses stale invoice edits and finalize attempts instead of silently overwriting or deleting newer data, and invoice draft autosave keeps retryable or unresolved edits on screen.
  • Invoice pages now have a clearer action bar and overflow menu, direct PDF downloads on finalized invoice rows, icons on payment actions, a send-language override, and fixes for billing dialogs and source selection in the wizard.

Time tracking

  • On mobile, you can now track time with a local stopwatch, file stopped time into a week, edit time entries, and delete entries.
  • Time entries within a day now use the same order by start time, end time, and visible name across the month view, day drawer, and week grid.

Clients and projects

  • On mobile, you can now add, complete, and reopen tasks on projects and organizations, and add activity notes with unsent drafts kept on your device.
  • Editing clients, organizations, contacts, employees, and projects now preserves existing data more reliably, keeps VAT and e-invoice address fields through save cycles, picks up server changes when you have not edited a form, and searches beyond the first page of picker results.
  • Estonian OÜ is now available as a legal form, and team badges remove legal-form suffixes more consistently.
  • Organization favicons can now be refreshed, are stored in a normalized image format, update their URLs when the stored image changes, and stop showing a cached current response when the icon is no longer stored.
  • Steerd finds website icons for clients and organizations more often, including when a site refuses the first request, and it picks a larger, sharper icon where the site offers one. An outside icon service is only used when the site itself gives back nothing usable.

Documents

  • On mobile, you can now list and open projects, invoices, and CVs, including opening invoice and CV PDFs in your device viewer.
  • You can now preview PDFs in Steerd with a sandboxed in-app viewer that supports page navigation, zoom, text selection, and copy.

CVs

  • Anonymized CVs now keep the redacted-photo marker when rendered through templates, and CV drafts are validated on save while still allowing an existing over-size draft to be saved or reduced.

Travel and expenses

  • On mobile, you can now list and open trips, create draft trips, add expenses, attach photographed receipts, and retry an expense submission without duplicating it.
  • You can now file trips through a step-by-step wizard, resume drafts, safely switch between draft autosaves, discard drafts from a canceled flow, and retry trip actions without duplicate submissions.
  • Users with time access can now choose granted projects when filing trips, and travel CSV exports hide client and project names from people without the matching bookkeeping permission.

Inbox and email

  • Inbox messages now render HTML email more faithfully, show remote images by default unless blocking is enabled, load embedded images, and can regenerate older stored snippets.
  • Inbox search now uses one date-ordered list that searches automatically, has the same pagination controls as the normal list, scopes filters correctly, and keeps the conversation pager within view.
  • Inbox conversations now show paperclip indicators when they include attachments, let you download inbound attachments or save them to Files, and preserve sent-file snapshots after a mailbox is disconnected.
  • Mail deleted from the inbox is no longer brought back by a mailbox sync of the same message.
  • Email-ingestion proposals created from unusual sender headers can now be confirmed instead of leading to a refused confirmation.
  • Integration settings now show compact connection rows with actions in a menu, hide Gmail connection until it is available, require the mailbox password before IMAP host or port changes, and only store App Store icons from Apple's artwork source.

Developer platform

  • The mobile app now has a signed-in experience with theming, secure access to your Steerd data, customizable middle tabs, clearer setup error messages, and update notices when an app version is no longer supported.
  • On mobile, you can now view your dashboard summary, browse and upload files, and list, open, create, and edit organizations and contacts.
  • On mobile, you can now search across records from Home, open supported results, view notifications, and mark notifications as read.
  • Repeated create requests after a lost response can now resolve to the same saved record instead of creating a duplicate.
  • The in-app assistant can now help from your current page, show proposed changes for review before applying them, display named records and outcomes in its activity, and let you reopen or delete past conversations.
  • Assistant replies can now appear as they are generated, with better protection for echoed provider keys and fewer delays during longer assistant turns.
  • Error responses are now more consistent, and a stale or unusable team selection is refused instead of silently switching you to a different team.
  • The web app no longer triggers unsafe-eval Content Security Policy reports from browser-side validation.
  • Steerd now collects privacy-conscious, cookieless product usage analytics across areas like invoices, travel, time tracking, CVs, clients, onboarding, and subscriptions, while honoring Article 21 opt-outs. This helps us understand how features are used without relying on cookies.

Account and billing

  • You can now create your own teams, leave teams you belong to, keep using Steerd with no team selected, and schedule an owned team for deletion with a fourteen-day cancellation window.
  • On mobile, you can now access phone-friendly billing, team, contacts sync, API key, and audit log settings.
  • Admins can now set daily assistant token limits for the team and per member, and users can set a daily limit for a personal provider key with price estimates shown in Settings.
  • AI provider credentials can now be saved and tested even when a provider model list is unavailable, with clearer model-list errors, support for OpenAI reasoning models with your own keys, and plan access labeled as AI assistance.
  • Settings now hide or make sections read-only when your role cannot use them, and restricted roles are no longer shown a Free plan label just because billing details are hidden.
  • You can now choose your own date format, time format, and first day of the week in Settings, with a live preview of the saved preferences.
  • Sign-in and password reset refusals now use localized messages, expired or used reset links take you to request a new link, and language detection handles empty headers and non-language tags more accurately.
  • New team owners are now offered a resumable five-step onboarding wizard for business identity, address, tax setup, and optional product-interest questions without blocking access to Steerd.
  • You can now opt out of product analytics in Settings, and Steerd stops analytics capture for opted-out profiles.
  • Profile avatar uploads that are removed, replaced, or abandoned before saving are now released right away instead of waiting for nightly cleanup.
  • Workspace deletion now waits for already in-progress changes to finish before creating the final deletion export. This helps ensure recently saved data is included before the workspace is permanently deleted.
  • Deleting a workspace now closes open checkout sessions and cancels its active subscriptions before removal. This helps prevent billing from continuing after the workspace has been deleted.

Fixes and polish

  • The invoice and travel wizards now separate discarding a draft from leaving while keeping it, and both include a back action that saves before leaving.
  • Forms, dialogs, cards, wizards, invite text, phone editor headers, and the week toolbar received accessibility and layout fixes that improve descriptions, scrolling, headings, disabled states, previews, and small-screen fit.

Inbox and email

  • Forget deleted mail now works from any connected mailbox that received the message, not only the one the deletion happened to record, so the next sync can import it again. Mail deleted before this release keeps the old behavior.

Developer platform

  • A saved AI provider key is now sent only to the host of the endpoint it was saved with, so it can no longer be redirected to a different host. A key you enter yourself is still tested against the endpoint you enter with it.

Start using the ones you just read about.

Free to start, and every release above is already in it.