a question answered, a sale keptthe chat needs no cookie bannerunlimited teammatesreply from slack or our phone app

/blog / stories

why we built spookat small on purpose

· by kuba · 5 min read

The Spookat cat winking over a yellow ruler that measures a tiny green block, with 2 kb written beside it.

Every product starts small. Most of them treat that as a phase: the embarrassing early version you grow out of on the way to a platform. We built Spookat small and decided to stay there. Four days before launch, here’s why, and what “small” actually means in numbers.

small is something you can measure

“Lightweight” is on every chat widget’s homepage, and it costs nothing to write. So we gave ourselves numbers that fail the build when we break them.

  • The launcher, the little button on your site, has a budget of 4 kb compressed. It’s about 2 kb. If a change pushes it over 4, the build fails and the change doesn’t ship.
  • The chat panel has a budget of 25 kb, and it doesn’t load at all until someone clicks. Before that click, the launcher makes 0 requests to our API.
  • One style, one font. You pick one of 8 styles and one font. A visitor who opens the chat downloads that one, not all of them.

For comparison, when we weighed seven chat widgets on the same page before anyone clicked, Tawk.to transferred 255.8 kb and Tidio 510.9 kb. Intercom’s widget, on Intercom’s own site, transferred 1,006.3 kb. Ours transferred 2.0 kb in one request.

That’s the number your visitors pay on every page view, whether they ever talk to you or not. We wanted it to round to zero.

the click pays for the chat

Waiting for the click is the other half of small. Most visitors never open a chat. The ones who do are the only ones who should pay for it.

So when someone clicks, the panel, the style and the font load, and a connection opens. On a throttled phone-class setup, the chat was ready in 0.80 seconds cold and 0.13 seconds warm. Everybody else, the people who read your page and leave, never download a byte of it.

small on the server too

Small isn’t just what runs in the browser. The server that answers your visitors is one process. That’s a deliberate choice, and people who build things usually ask the same question about it: how far does it go?

We tested it before launch instead of guessing. One process on one core took 1000 visitor messages a second with zero errors, and 800 a second with every message also posted to Slack. That’s far more than any single site sends, spread over 1200 test sites at once, and a flood on one site stayed on that site.

One process means fewer moving parts, and fewer moving parts means fewer ways for your chat to go quiet at 3 am. It also means it’s cheap to run, which is the next part.

small is why the price is small

A small product costs little to run, so it can cost little to use. starter is $4.99 a site a month, and that’s the whole team, unlimited chats, all 8 styles and Slack or Discord. We charge per site, not per seat, because a teammate costs us a row in a table.

Big support suites price like big software because they are big software: a bot builder, a ticket system, a knowledge base, a CRM, a marketing popup engine, reports for the reports. You pay for all of it, whether you use one part or not.

what we left out

Staying small means saying no, a lot, and saying it on purpose.

  • No bot builder. Your team answers. If you want an AI to help, it works through the same tools a human does, with a human able to take over any time.
  • No ticket system. A conversation is open or closed. It has an assignee and notes. That’s enough for a team that answers chats, and it doesn’t turn a quick question into a case number.
  • No new app for your team. They answer in the Slack or Discord they already have open. The dashboard is there for settings and the inbox, not as a place anyone has to live.
  • No marketing popups. The widget doesn’t pop up, doesn’t nag and doesn’t “engage” anyone. It waits to be clicked.
  • No tracking. No cookies on the widget, ever, and we never store a visitor’s IP address.

Every one of those would have been easy to add. Every one of them would make the widget heavier, the product harder to learn and the bill bigger.

small is easier to trust

There’s one more reason, and it’s the one we care about most. You can hold a small product in your head.

You can open your browser’s network tab and see exactly what the launcher does before a click: one request, about 2 kb, nothing else. You can read what we store about a visitor in a short list. You can understand where a message goes: saved first, then into your Slack thread, then back to the widget. There’s nothing hidden in a corner of a platform you’ll never visit.

That matters more for a chat widget than for most things, because a chat widget sits on your site, in front of your customers. It borrows their trust in you. It should be easy to check that it deserves it.

small to install

Small also applies to the ten minutes you spend setting it up. Spookat is one script tag. No npm package to keep updated, no SDK, no build step on your side, no tag manager needed. Paste it before </body> and the button is there. The look lives in the dashboard, or in a few lines of window.Spookat if you’d rather keep it in your repo.

Connecting Slack or Discord is one button and a channel picker. Inviting a teammate is typing their email, and everyone in the channel can answer without an invite at all.

That’s also why agents can set it up. An agent in your editor can register the site, add the tag and pick a style, and a human claims it after. There’s so little to do that a tool can do all of it, and you can check every step it took in a minute.

A product you can install in one line is a product you can remove in one line. We think that’s a feature. If Spookat stops being worth it, you delete a tag, and your site is exactly as fast as it was before.

what small doesn’t mean

Small doesn’t mean unfinished. Spookat launches with 8 styles, 17 fonts and 12 languages, email follow-ups for visitors who leave, webhooks, an API, an MCP server so agents can work the inbox, and an activity log with undo. It’s a complete product for one job: talking to the people on your site.

And small doesn’t mean we’ll stay still. We’ll keep adding what makes that one job better. We just won’t add what makes it heavier, and the budgets that fail the build will keep us honest about the difference.

the short version

We built Spookat small so it costs your visitors nothing, costs you little, and does one job well. On October 31 it’s live for everyone.

See what it costs, and try it on your real site for 14 days, no card.

liked it? get on the list.

invites go out in small batches. when yours lands: 14 days free, no card.

we only email you about your invite and the launch. you can stop them anytime. privacy