bespoke.
What's new

Changelog

Every improvement to bespoke, as it ships. Newest first.

Written from your perspective: you are the creator, and they are the people who message you.

2026-10-03

Pricing is out in the open →

  • new The pricing page is now linked from the front page and the footer of every public page, and search engines are welcome to it. Free keeps every conversation forever; Pro is $12/month (or $120/year) for unlimited links, custom addresses, full theming, larger files that stay, verified senders, a shared inbox, and your own chat apps.

2026-09-30

Group chats open again from the Chats list →

  • fixed In Chats, clicking a group conversation under the Conferences tab didn't open it: on a fresh account the first group chat and the first one-to-one chat both get the number 1, and the app always resolved a number to the one-to-one chat, so the group chat you clicked either never appeared or a different chat opened in its place, complete with that chat's message history. Group chats and one-to-one chats now carry their own marker in the page address, and the read-state, message history, and live-update channel all follow the right conversation.

Live updates reach your other tabs again →

  • fixed When you rename yourself in a chat, every other tab and window showing that conversation is supposed to pick the new name up within a second. On the deployed app that live channel was being turned away at the door: the page asked for it without identifying itself, so the server answered "not logged in" and the browser kept quietly retrying. The channel now identifies itself properly, and renames (and future live updates) arrive everywhere they should.

Renaming yourself in a group chat works again →

  • fixed Changing your display name in a conference chat failed with a network error on the deployed app: the server's cross-origin rules didn't allow the kind of request the editor sends. It worked in local development (which is same-origin and skips that check entirely), which is why it slipped through. The request now clears, and the new name reaches your other tabs and the people in the chat.

2026-09-28

Pro-locked sections now link to their feature pages →

  • improved The parts of the app behind Pro now point to their public explainers so you can read what a feature actually does before deciding: on a link's Appearance page, custom styling links to the theming page, the Identity panel to verified identities, and custom link addresses to vanity links; the Connect page links to the XMPP-clients page. Each opens in a new tab, so anything you're mid-editing stays put. Also fixed a small eyesore on the Appearance page: locked sections were showing two "PRO" badges where one would do; they now show one.

The plan card links to the pricing page →

  • new Next to the Upgrade button in Settings, "See what's different" opens the pricing page: the full free-versus-Pro comparison, line by line, in a new tab.

Small touches: sidebar footer, Connect, and Chats →

  • improved The plan name under your email in the sidebar is now a small pill (accent for Pro, quiet grey for Free) instead of bare text, Sign out is a proper outlined button, the Connect page stretches to the full width of the window instead of sitting in a narrow column, and on Chats the search and notify buttons sit at the right edge of the tab bar instead of hugging the tabs.

Integrations tab removed from Settings →

  • changed The Integrations tab in Settings only repeated the XMPP connect details that live in full on the Connect page, so it's gone. Settings is now Account, Plan & usage, and Team; anything integrations-related starts from Connect in the sidebar.

Chats on narrow phones no longer run off the right edge →

  • fixed On a phone, the open-conversation view in Chats kept its margin on the left but pressed against (or past) the right edge of the screen. The message box now shrinks to fit, with even margins on both sides.

2026-09-27

What Pro includes →

  • new Pro now covers every paid feature at once: custom link addresses, custom styling (your own CSS and the theme presets), verified identities for senders, the shared team inbox, connecting external chat apps (Dino, Conversations and friends), and removing the "bespoke" label from embedded chat buttons. Everything you already set up keeps working if a subscription lapses: saved styling keeps rendering, custom addresses keep resolving, verified senders keep verifying, and your team keeps their history; only new changes and additions ask for Pro.

Remove the branding from an embedded chat button →

  • new Pro members can drop the small "bespoke" label from the chat launcher embedded on their own sites: a toggle on the link's Appearance page, in the Embed section. The chat button itself stays (it is how people reach you). Setting it is a Pro feature; links that already have it keep working if a subscription lapses.

A nudge when your file storage fills up →

  • new Files shared in your chats count toward a storage guideline (100 MB on the free plan, 1 GB on Pro). When you pass 80% and again at 100%, the dashboard mentions it and you get one email per milestone. Nothing is blocked or deleted; it is a heads-up to clear space or upgrade.

The free plan now has a link limit →

  • changed Free accounts keep up to 3 active chat links (pausing one frees its slot; revoking frees it for good) and 1 active group link. Creating or resuming beyond the limit asks you to revoke one or upgrade. Nothing is ever deleted: if you drop back below the limit later, links that went over stay put and stay readable, they just stop accepting new chats until you make room. Pro is unlimited, and the dashboard tells you where you stand.

2026-09-26

Custom addresses for your chat links →

  • new Pro members can claim a custom address for a chat link: your page at bespoke.talk/c/your-word instead of a random string. Set it from the link's Appearance page under "Link address"; lowercase letters, numbers, and hyphens, 3 to 30 characters. The original random address keeps working, so nothing you've already shared breaks.

The plan card says when Pro renews →

  • improved Next to "Pro" on your dashboard, the plan card now reads "renews {date}" with your next billing date. Schedule a cancellation and it switches to "current period ends" with that date instead.

Account setup after upgrading, on its own page →

  • changed If you pay for Pro before having an account, the "finish creating your account" step now opens on its own page right after payment instead of a form tucked into the dashboard. The email field is locked to the address you paid with (confirming you own it happens by email, as always), and there's no character-click check on this page; you just paid. If you step away before finishing, the dashboard's "Create account" banner leads to the same page whenever you return.

2026-09-17

Embeds only work on the sites you list →

  • changed Leaving the Allowed origins box empty on a link's Appearance page used to let any website embed that chat widget. Now an empty box means no site can embed it: paste the domains you embed on (one per line), or the widget stays locked to your shared link. Embeds you've already set up keep working unchanged.

Chat button no longer picks up the host site's button styling →

  • fixed The "Chat with me" button on embedded sites is a real button in the host page, and sites whose design system styles every button (bevels, outlines, shadows) could paint their effects onto it, most visibly as a retro bevel riding the accent color. The button now explicitly opts out of host shadows, so it stays a clean accent pill everywhere it's embedded.

2026-09-14

Opening messages →

  • new Write up to three opening messages per chat link, delivered as yours the moment someone opens the link: a short typing pause, then your messages, then they reply. Configure them on each link's Appearance page; the starter chips step aside when you do.

Chat header buttons no longer cover the creator's name on phones →

  • fixed On a phone, the bell and "Notify me" buttons sat on top of the "with the creator" status line whenever the name was long enough, so both read as one jumble and taps landed on the wrong thing. On narrow screens the buttons now drop to their own row below the header text, and the name wraps before the fold-away arrow instead of hiding under it.

2026-09-13

Light themes get full coverage →

  • improved The "Save this to return" banner, system messages, and button hover states now follow your theme instead of fixed dark colors. Light presets like Warm theme these too, and new hooks (--warn-fg, --accent-soft-hover, --accent-glow) let custom CSS restyle them directly.

2026-09-11

Legal pages →

  • new Published bespoke.talk/tos and bespoke.talk/privacy: the rules for using bespoke, what's stored and when it's disclosed, and where to report anything wrong (abuse@bespoke.talk).
  • new After creating an account, the success page and the dashboard now point to the Terms: continuing to use bespoke means agreeing to them.

2026-09-10

Notify me, pinned where you can find it →

  • improved The Notify me button was easy to miss: it sat in a left-hand row among quiet text, and on phones it could wrap out of sight. It now anchors to the top-right of the chat header and the right edge of the slim bar, and a second, fuller "Notify me when [name] replies" prompt sits just above where you type. The prompt disappears once you've enabled notifications (or dismissed it), leaving the green On button in the header.

The reply box is on screen when Chats opens on a phone →

  • fixed On mobile, opening a conversation put the bottom of the reply box just below the screen: you had to scroll down to start typing, because the page sized itself against the browser's largest possible height instead of the height actually visible while the address bar was showing. Chats now fits the visible screen exactly, with the reply box flush against the bottom edge from the moment it loads.

2026-09-09

A warning before you sign out without a password →

  • new If you use bespoke through your secret dashboard link and have no password on your account, signing out now asks first. The reminder explains that the link is the only way back in (there's no email to recover it with) and offers to set a password before you leave. Accounts with an email+password login still sign out instantly.

"Email login added" now says so →

  • fixed Adding an email and password to a link-only account showed the wrong headline: it said "Account created. Check your email." as if a brand-new account had been made, and the correct "Email login added" message could never appear. Your chats and links were always kept; only the words on that page were wrong.

2026-09-05

"Notify me" answers when tapped →

  • fixed The Notify me button on the chat page did nothing when tapped: no question about notifications, no explanation, nothing. It was broken on every device, but it showed most on iPhone, where the button is meant to open a short note about adding the chat to your Home Screen first. Both copies of the button (the one in the header and the one in the slim bar once the header is folded away) now respond.

The chat fits your phone again →

  • fixed On iPhone, the chat page had quietly grown wider than the screen: the Send button, and anything else past the edge, could only be reached by swiping sideways. The page now keeps to the screen's width, and the "save this to return" link folds itself into whatever space there is.

History that came back to desktop chat apps →

  • fixed Conversations opened in a desktop chat app (like Gajim) were showing up empty: everything sent before you joined was silently thrown away by the app, because our server labeled each replayed message's time in a place apps don't look. The label now sits where every app expects it, so the full history appears the moment you join, including chats that started while you were away.

Reply quotes that stopped saying "no longer available" →

  • fixed When someone replies to a specific message of yours while you're still in the chat, the quote above their reply now shows what they're quoting. It used to say "original message, no longer available" even while your message sat right there above it, because the live page only learned quote texts after a reload. Works in direct and group chats.
  • fixed Sending several messages in quick succession no longer mixes up which message a reaction or a quote tap points at: each message now keeps hold of its own identity.

The same chat, open on your phone and your computer →

  • fixed Opening your saved return link on a second device no longer freezes the page behind a "this chat is open in another tab" notice. The conversation now opens on both devices at once, and what you send from either shows up on both as your own message.
  • fixed Your other device's messages no longer count as the creator replying: no notification buzz for your own words, and the creator's online and typing indicators stay honest.
  • new A chat kept open in two places shows the second device under your nickname with a short suffix (like -x7q). The person you're talking to still sees it as you, just from another screen.

2026-09-02

Where a chat came from →

  • new Every conversation's ⋯ menu now shows, under Technical, the address the sender is chatting from. Click it to copy. If the chat has been opened from more than one address, a small count says how many.
  • new "Show connection history" under that address expands the full timeline: when the chat was started, each time the sender came back, and their live connections, each with its own address and time.

A page for campaigns →

  • new There's a new page at bespoke.talk/for/marketers, built for people running campaigns: students with a poster, a marketer with a flyer, a team with a booth. It shows the whole loop on one screen, and the QR code on its example poster is real, so the page demos the product when you scan it.
  • new The page also carries the numbers story: the views, chats, replies, and response time that every link keeps for you, shown on a real dashboard screenshot.

Tuck the chat header away →

  • new The page people chat from can now fold its whole top area — the creator's note, the chat details, and the "save this to return later" strip — into one slim bar. Click anywhere on it to collapse, click the bar to expand, and see more of the conversation. Works on both direct and group chat links.
  • improved Buttons inside the header (mute, notify me, copy link) still work without folding anything away, and dragging to select the return link no longer counts as a click.

2026-09-01

A quick human check on signup →

  • new Creating an account (email or the one-click link) now asks you to click three characters from a small bar onto the image beside it. It takes a couple of seconds and keeps scripted accounts out; a "new characters" link swaps in a fresh set if the first is hard to read.
  • new The check is generated on our own server, works without any third-party tracker, and every challenge works exactly once.

A small "bespoke" credit on your embed button →

  • new The chat button embedded on your site now ends with a little "bespoke" credit that links to bespoke.talk — the same "powered by" convention other chat widgets use. Hover it and it underlines; your button's colors are untouched.

2026-08-30

Invite teammates with a link →

  • new Team has a second way to grow: "Invite with a link" mints a single-use invitation that creates a brand-new bespoke account for whoever opens it, already on your team with the access you picked. No signup page, no finding their email first.
  • new Senders of the link who already have a bespoke account see a one-click accept instead of a sign-up form; everyone else gets the normal email-and-password form with the invitation's scope spelled out up front.
  • new Every invitation works exactly once and expires after 24 hours. Pending ones are listed in Team with their scope and remaining life, can be re-copied while unclaimed, and can be revoked any time.

Answer chats as a team →

  • new A new Team section on your dashboard lets you add teammates by their account email and choose what they see: every conversation, or only the links you pick. New links stay private unless you shared "all links".
  • new Teammates get your shared conversations in their own Chats page under "Shared with you", with full history, and reply under their own name. People messaging you see who answered what.
  • new Sharing only goes one way: teammates never see anything of yours beyond the links you picked, they can't delete conversations, change your links, or add other people, and removing them takes effect instantly.
  • new Unread counts and the mute button are personal: your teammate's badges and notifications are theirs alone, and muting on your side never silences theirs. Push notifications reach everyone on the team unless they muted the chat.
  • new Each teammate chats under their own nickname, chosen so it can never collide with yours, the sender's, or another teammate's, even if two of you share a name.

Your chats, full history, in any XMPP app →

  • new Connect Dino, Conversations, or any XMPP app once on the Connect page and your conversations open there with their complete history, not just new messages. Scrolling back reaches the very first message, even in chats that went quiet long ago.
  • new Your list of chats stays the same everywhere: new conversations show up in the app on their own, deleted ones disappear, and a one-time "Sync all conversations" button on the Connect page brings a brand new device up to date.

2026-08-29

Links that fail to load stay visible →

  • fixed A picture link that can't load (expired, deleted, or a format your browser can't show, like iPhone HEIC photos on Windows) used to disappear from the bubble entirely, taking its text with it. It now falls back to a normal clickable link, so you always see the address and can open it yourself.
  • fixed Links inside your own message bubbles were painted in your brand color: the same color as the bubble background itself. A pasted link looked like a blank line, as if it never arrived. Bubble links now use the bubble's own text color and stay underlined, whatever accent you pick.

Talk to us, right from the app →

  • new A small "Chat with me" button now floats around the app, everywhere except Chats, where it stays out of the way of your reply box. It opens a direct chat to the bespoke team without leaving what you're doing.
  • new Signed in, the chat already knows who you are: it shows a quiet "Chatting as {your name} · via app.bespoke.talk" chip on your side and arrives with a ✓ verified badge on ours, always continuing the same thread. Signed out, it behaves like any anonymous chat.

2026-08-28

The full story behind each change →

  • new Every section on this page and in What's New opens onto its own page with the same summary plus pictures and background. Look for the arrow next to a title.

Reply to a specific message →

  • new You can now reply to any specific message in a conversation, on every surface: your inbox, the embed, the full-page chats, and group chats. The message you're replying to appears as a compact quote above your reply, and tapping a quote jumps back to the original.
  • new On a phone, press-and-hold any message to reply or react with an emoji (reactions previously needed a desktop hover). On desktop, hover a message and hit the new ↩ button.
  • new Replies survive reloads and work on messages from earlier sessions. Apps like Dino and Conversations see them as native quoted replies.

Line breaks that stay line breaks →

  • fixed Messages written with line breaks now keep them in the bubbles everywhere chats appear: your inbox, the embed, and the full-page chats behind your links. They had been collapsing into one long line.
  • fixed On the full-page chats, Shift+Enter now adds a line break instead of sending the message halfway through. Until now a typed line break was only possible by pasting.

2026-08-26

Know who's messaging you →

  • new Creators with a website can now see who they're talking to: if your site knows who's logged in, one server-rendered line next to your embed snippet tells us, and chats started from your site arrive named with a ✓ verified badge and your own user id, so you can jump straight to their record. Every visitor gets one thread that follows them across visits and devices.
  • new A new "Know who's messaging you" section on each link's customize page holds everything: your account's signing secret (with a 24-hour grace window when you rotate it), copy-paste integration snippets for PHP, Node, Rails, Python, and SPAs pre-filled with that link's slug, and a test panel that runs the exact same check your chats use, so "the panel says ✓" always means "your chat will too".
  • new Identified visitors skip the nickname step and go straight into the conversation, and always see a quiet "Chatting as {name} · via {your site}" chip. Anonymous visitors are completely unaffected: no signature, no chip, exactly the same flow as before, and a missing or expired line never blocks a chat.

Sturdier conversations →

  • fixed A message can no longer appear twice in a conversation when the chat server redelivers it, which could happen after a slow moment on either side.

Faster, sturdier signups →

  • improved Creating an account no longer waits on the email server: the page finishes loading as soon as your account is ready, and the confirmation email arrives in the background moments later.
  • improved Sign-in, sign-up, and password-reset forms now shrug off floods of repeated submissions from a single source, so your inbox can't be turned into a mail bomb through them.

2026-08-24

One chat, one tab →

  • fixed When your chat widget reopens while the conversation is already open in another tab, it now shows only a quiet notice instead of a full chat you can't use. It takes over automatically when the other tab closes.

Buttons that match your brand →

  • new The text on the "Start chat" and "Send" buttons now follows your embed's text color on every chat surface — the embed, the full page behind your link, and the page people land on after popping out of the embed — so the buttons always match your launcher.
  • new Hovering those buttons now shades your accent color slightly darker (or lighter on very dark accents) instead of a fixed green. Custom CSS can steer both with the new `--button-fg` variable and the existing `--accent-hover`.
  • improved The built-in theme presets (Dark, Warm, Frost, Sunset, Bubblegum) now theme these buttons too, so loaded themes keep one consistent palette.

Chat pages that stand tall →

  • improved Chat pages now fill the height of your screen: the box you type into sits at the bottom of the window, and all the space in between belongs to the conversation.
  • improved Every conversation page now says who you are talking to right in the browser tab, instead of the site's tagline.
  • new People who open your link see one quiet line telling them where they landed: you shared this link so they can message you, with no signup and no email.

2026-08-23

Replies that reach people back →

  • new After someone sends their first message, they see a one-time line under it offering to push your replies to them, even with the tab closed. It appears once per visit and never nags.
  • fixed Reopening a chat (from the embed's open-in-a-tab, or a saved link) once again shows the private return link under the header. It had stopped appearing on that page.

Branded link previews →

  • improved Sharing any bespoke link now unfurls a preview card with the headline and the link itself on it. Every page carries previews now, including the private return link the person you're chatting with can save.

Days at a glance →

  • new Long conversations now show a small divider between messages from different days, so you can see at a glance when each part happened.

See when they're typing →

  • new Watch the dots move while the person you're chatting with is typing, on every surface, and they can see you too. Hover any message's timestamp to see the exact date and time.

Reactions everywhere →

  • new The people who message you can now react from any chat page, including conference rooms and the pop-out view, and every surface displays them.

A changelog, for you →

  • new Every improvement now ships with a note on this page, and a "What's new" item in the top navigation of your dashboard (a green dot means something new since your last look).
  • new There is also an RSS feed at /changelog.rss if you prefer to follow along in your reader.

2026-08-22

Reactions stick around →

  • improved Emoji reactions no longer disappear when either side refreshes the page.

Chat images display inline →

  • improved Photos the people who message you send now render right in the conversation on every surface, and links inside messages unfurl too.

"Allow files" works on every new chat →

  • fixed File sharing could fail to switch on for brand-new conversations; it now always can.

Upload windows survive refreshes →

  • fixed An "Allow files" window no longer appears to vanish after a reload. It lasts the full 15 minutes on both sides.

Bigger chat view →

  • improved The chat page people land on when they click your link now fills the whole browser window; the footer no longer takes up a third of the screen.

2026-08-21

Send images and files in chat →

  • new You can unlock file uploads per conversation. "Allow files" opens a 15-minute window that the person you are chatting with can ask you to extend.
  • new Once unlocked, they can attach images, PDFs and common documents right from the chat, on your site's embed or the standalone page.

2026-08-20

Notifications on iPhone →

  • new People who chat with you on iPhone can get notified about your replies: they add the chat to their Home Screen and enable Notify me.