Docs

Teams and seats

A team is a group you can share a link with, so that only its members can open it. A team can also pay: it buys seats, a seat covers a member, and somebody on one needs no subscription of their own. This page covers creating a team and inviting people, the three roles and what each may do, how seats are bought and freed and what an extra one costs, what happens to somebody who already pays for themselves, and how one machine decides whether it is acting personally or as a team.

Teams and seats

A team is a group you can share a link with, so that only its members can open it — they prove who they are with a code, and the link does not have to be passed on to anybody.

Create one under Teams (the account menu at the top right → Teams): give it a name and you are its owner. Invite people by email; an invitation stands for 14 days. The invitee gets a mail with a link and accepts either from that page — which mails a code to the invited address and creates an account if the address had none — or, if they already use Deixis, from the Team panel in their own copy, where invitations addressed to their account are waiting.

Role May
owner everything, including renaming and deleting the team. Exactly one per team.
admin invite and remove members, revoke any link shared into the team, and turn the team's cloud features off or on.
member share into the team, open what is shared with it, and revoke their own links.

Cloud features off is the one setting a team imposes on its members' installs: on, no member's Deixis sends text to the cloud model, and local models and the rules keep working. The Team page carries the switch for an owner or admin and a read-only line for a member; the privacy section above says exactly what it covers and how each install finds out.

Anyone but the owner can leave a team whenever they like. The owner cannot: they hand it over first — setting another member to owner transfers it, and the old owner becomes an admin — or delete the team. Deleting a team closes the links shared into it, and the page then says the team no longer exists.

Team words — one list of names for the whole team

A team's owner or admins keep one list of words — client, product and repo names, the names nobody's recogniser has heard before — and every member's Deixis uses it, so those words come out right for everybody without each person teaching them. It is the Team words tab of the Dictionary page (the Team panel links to it): a member reads the list with the team's name on it, and an owner or admin adds and removes words there for the whole team. Each word can carry the spellings it is heard as ("robert hood" for Robethood), which become fixes on every member's machine. A team keeps up to 500 words.

On each member's machine the team's words join the dictionary behind the person's own: their own words come first in the recogniser's prompt, then the team's, then the packs; a word they already have, in any casing, keeps their spelling; and a fix of their own for a spelling wins over the team's. Someone in two teams gets both lists, the older team's first.

What leaves the machine: the words themselves, between the team's members. The app fetches the list — shortly after it starts, every six hours, and when the Team panel or the Team words tab opens, with an unchanged list answered by the service's ETag and no body — and keeps it on the machine, so dictation has it offline too. Nothing about any dictation is sent to fetch it. The words are stored with the team and deleted with it; a word stays the team's after the person who added it leaves.

The words apply while the member's own Pro is active — a trial, their own plan or a seat on the team's. Without it the tab says so, the machine drops its copy, and everything else, the person's own dictionary included, works as always. Signing out, leaving the team or being removed from it drops the copy too. (Who gets team words is one predicate in the service, teamDictionaryAvailable in proxy/src/org/dictionary.ts, so the paid boundary can move without touching the app; DEI-686.)

Seats — when the team holds the subscription

A personal subscription is a team of one. There is one plan per interval and it is the same one either way — a person on their own pays for one seat, at the same price per seat a team pays. Nothing about a team is a different product, which is why a subscription can move between the two at all.

A team can hold the subscription for everybody in it, or carry none at all. Both are ordinary states, and the Team panel says which this team is rather than making you infer it. A team with no subscription works exactly as it always has: each person's own trial or subscription applies, joining neither starts one nor pays for one, and invitations are unbounded because nothing is being paid for.

Once a team subscribes, a seat covers a member — somebody on a team seat needs no subscription of their own, and the cloud features work on their machine because the team pays. Seats are bought when the team subscribes: an owner or an admin picks a plan and a seat count under Teams (the account menu at the top right), and the checkout opens in the browser like the personal one. Prices are per seat, the Pro price for each; the price lives on the payment provider's product rather than in the app, and the panel shows the figure it will actually charge before anything is confirmed.

A seat is taken by a member or by an outstanding invitation. The seat is committed when the invitation is sent, not when it is accepted — that is the moment somebody is present to see a price and agree to it, and it means accepting an invitation can never fail on a declined card. Withdrawing an invitation, or letting it expire, frees its seat again.

Inviting past the bought seats says what it will cost, and asks. When there is no spare seat the invitation is not sent; a confirmation shows the new seat count and what the team will pay per period at it. Confirm, and the rest of the current period is charged pro rata straight away, the new full amount is billed from the next renewal, and the invitation goes out. Cancel, and nothing is charged and nobody is invited. Buying and changing seats is open to owners and admins both — an admin can already invite, which is the act that raises the bill, so an admin who could commit money without being able to see it would be the worse arrangement.

Seats never shrink on their own. Somebody leaving frees their seat for the next person rather than reducing the count; the panel says how many are spare, and an owner or admin can lower the count deliberately, which credits the difference the same way raising it charges it. It cannot go below the seats actually in use — remove somebody, or withdraw an invitation, first.

Somebody who already pays for their own keeps it. Joining a team does not cancel a personal subscription and does not charge anybody twice: the account's own subscription is what entitles it, and the team seat sits behind it. There is no nag and no cancel offer.

An owner who already pays for themselves moves that subscription onto the team instead of buying a second one. The Team panel offers Use my subscription for this team in place of the subscribe button, and says before you confirm what the seat count becomes and what the team pays per period at it. The count becomes the seats the team actually needs — its members plus any outstanding invitations — and the rest of the current period is charged pro rata; a team of just the owner needs one seat, so nothing is charged at all and only the ownership changes. From then on it is the team's subscription: it covers everybody in the team, and the Account panel reports it as the team's rather than as yours personally. Seats then grow the ordinary way, as people are invited. Only the owner may do this — an admin's own subscription is their money, and an admin who wants to pay for the team buys the team one normally.

Deleting a team you pay for returns the subscription to you, at one seat, with the rest of the period credited; everybody else in the team stops being covered by it. If you already hold a personal subscription of your own the deletion is refused and says why — two personal subscriptions on one account is not a state worth creating, so hand the team over or cancel one first.

Who holds a subscription is decided in Deixis, not by the payment provider. The holder was stamped into the provider's record at checkout and the provider offers no way to rewrite it afterwards, so from the moment a subscription first moves, our database is the only record of whose it is — and an incoming update from the provider is never allowed to move it back.

Personal or a team — what this machine is acting as

The account menu at the top right of the app carries an Acting as control: Personal, or one of your teams. It is a preference on this machine, not something the service knows, and it decides three things:

  • the default audience in the share dialog — with a team active, My team starts chosen and points at that team;
  • which team the Team panel opens on;
  • whose subscription the Account panel reports as covering this machine.

The audience is still chosen per link. The context only preselects; every share dialog still asks, and what you pick there is what the link is made with. If the remembered team is one you have left or one that has been deleted, the switcher falls back to Personal silently and the share dialog preselects no team at all — an active context may narrow an audience and must never widen one.


Two keycaps, Ctrl and Win, held down and lit teal from underneath.

Hold a key. Speak. Keep working.

Deixis is free, needs no account, and runs on your own device.

v1.3.2 · 64‑bit Windows 10/11 on Intel or AMD · macOS 13 on Apple silicon · 51 MB · nothing else to install · Android on Google Play