11
39 Comments

6 months, 46K queries, 10 power users, $0 marketing spend

Shibui Finance is an MCP server that gives Claude access to 64 years of US stock market data. Users connect it and ask questions in plain English. No code, no subscriptions.

I posted "The Start" here in May. Here is what happened since.

The numbers

  • 46,000+ SQL queries generated and executed
  • 96% success rate (Claude writes the SQL, not the user)
  • 10 confirmed returning power users
  • ~800 tool calls/day
  • ~69 conversations/day
  • Server cost: one VPS. Total infrastructure spend is under $50/month.

What users actually built

I expected people to use it for basic stock screening. Instead, 10 returning users built completely different analytical systems on top of it.

One built a 25-year tax-aware backtesting engine through conversation. Another built a daily insider-cluster detection system with anti-gaming filters. Someone else built a compliance-based screener layering religious finance rules on top of standard financial filters. A fourth built a walk-forward factor validation system and uses a second AI model to adversarially review the results.

None of these were use cases I designed for. Every user arrived with an existing methodology and discovered they could finally execute it at scale without writing code.

What worked for distribution

SEO. I publish landing pages on shibui.finance targeting long-tail queries like "consecutive earnings growth screener" and "best MCP server stock data." ~200 daily search impressions, 8-17 clicks/day. This is the primary acquisition channel and the only one that compounds.

Bing Copilot. Shibui gets cited 12-16 times per day in Bing Copilot AI answers. I didn't do anything to make this happen. It started appearing and keeps growing month over month.

Articles. Published on dev.to, HackerNoon, and Hashnode. Each gives a dofollow backlink. Different angle per platform so nothing is duplicated.

What didn't work

Twitter. ~120 tweets over 4 months. Zero conversions. Not a single user came from X. I stopped posting in June.

Substack outreach. Emailed ~40 finance Substack writers offering free access. Got polite replies, zero sustained usage. Closed the channel in March.

RIA outreach. 291 emails to registered investment advisors. ~50% click-through rate on early batches, but converting clicks to active users is a different problem. Still running at low volume.

What I learned

The product sells itself to people who already know what they want to ask. They arrive with a methodology, try it, and come back. The problem is finding those people, not convincing them.

Retention is fine (41-65% of direct-connect users return). Acquisition is the bottleneck. SEO is slow but it compounds. Everything else I tried was a one-time spike that decayed to zero.

If I were starting over, I would skip Twitter entirely and put that time into landing pages from day one.

What's next

Authentication and a free tier cap. Right now it is completely free with no login required. That needs to change before I can measure anything properly.

A weekly newsletter bridging the landing page to the MCP server. Two drafts sitting in a folder, not shipped yet.

More landing pages. The SEO channel is working. I just need to keep feeding it.


Try it: shibui.finance

on August 17, 2026
  1. 2

    The difference between the use cases you expected and what those 10 power users actually built is pretty striking. Curious which one surprised you the most.

    1. 1

      I expected users screening for stocks more or less casually, but turns out the users are real professionals and run multi factor screens and backtests. That was quite a surprise because when I started building this I had no idea such things exists.
      I've been learning so much by observing what users do with the service.

      1. 1

        That’s a meaningful signal — the users are revealing a much more sophisticated job than you originally expected. If you’re open to continuing the conversation, what’s the best email to reach you at?

        1. 1

          Would love to discuss further, feel free to reach out to chris@shibui.finance. Thanks!

          1. 1

            Thanks! I’ve just sent it over.

            Looking forward to hearing your thoughts whenever you have a chance.

  2. 1

    the unexpected workflows are probably the strongest product signal in this update. i would define activation as one finished analysis that a user can save or repeat, not a tool call. then tag the first question that led there and compare return rate by workflow. that would tell you which landing pages deserve more investment, and it gives you a useful baseline before authentication and a free cap add friction.

    1. 1

      Thanks, that is useful advice, I'm currently reworking the whole instrumentation approach to get better visibility into usage, that helps.

  3. 1

    The Bing Copilot citation showing up unprompted and growing month over month is the most interesting data point in this post. You didn't optimize for it, it found you — which suggests your landing pages are doing something structurally right, not just keyword-right.

    The pattern across your distribution results is pretty clean: anything that compounds (SEO, AI citation) kept working, anything that required repeated human action (Twitter, Substack outreach) decayed to zero. That's a useful heuristic for where to allocate the next 6 months.

    The power user behavior is also worth sitting with. A 25-year tax-aware backtesting engine built through conversation is not a feature you could have spec'd — but it's probably your best acquisition asset. If even one of those users wrote up what they built, in their own voice, that's the kind of content that pulls in the exact buyer who already has a methodology and just needs the execution layer. Have you thought about making that a formal thing — documented case studies or guest posts from the power users themselves?

    On auth and the free tier cap: curious whether you're thinking about that primarily as a measurement problem or a monetization problem. The framing changes what you build.

    1. 1

      Good question regarding the auth/free tier cap. Independently adding auth would allow me to capture email addresses and talk to users. Right now it's all anonymous, I can see what users are doing, but don't have a channel reaching out to them.
      Introducing a paid tier would be the way to capture some of the value the service provides to users. I can see both being beneficial, and most likely adding auth is a prerequisite for introducing a paid tier.

      1. 1

        "That’s a key distinction. For Zarek, auth isn't just an account gate—it’s the communication bridge. Without it, user analytics are a black box where I see actions happening but can't talk to the actual builders using the tool.

        Auth solves the feedback problem immediately. Once that direct relationship exists, introducing a paid tier becomes straightforward because I'm already in touch with the people getting real value out of Zarek."

  4. 1

    10 power users who each built something you never designed is the strongest signal here — you shipped a platform, not a feature. The Bing Copilot citations are the sleeper: AI answers are quietly becoming a compounding acquisition channel few can attribute. Do you track whether cited visits actually convert into power users?

    1. 1

      No, I'm not tracking conversion of cited visits, it's not clear yet to me how the AI citation mechanism works. There is some visibility in the Bing webmaster tools, though hard to read from where to optimize. But yes, the traffic is highly valuable.

  5. 1

    The 10 power users is the number I'd frame. 46K queries reads like traction,
    but it's volume. Ten people who built things you never designed - a tax-aware
    backtester, a compliance screener - that's the product telling you what it
    actually is.

    I see the same shape from my side. I build a desktop finance tool for
    freelancers, different world, same pattern. The users who stick are the ones
    bending the tool toward their own process. The ones asking for the generic
    version leave, because the generic version is everywhere.

    And your Twitter numbers match my experience almost to the digit. Months of
    posting, a handful of signups. Meanwhile the long-tail pages I almost didn't
    write bring most of the traffic now. "Best MCP server stock data" and
    "offline invoicing software no subscription" are the same species of query:
    nobody shares them, everybody searches them. Boring keywords with intent beat
    interesting keywords without it.

    1. 1

      Thanks for your reply and sharing your experience, very insightful. And yes, doing the weekly SEO/AEO is boring but doing it consistently creates the compounding effect. Good luck with your venture!

      1. 1

        Thanks. One addition from my side: the boring part is also the moat.
        A single landing page can be copied in an afternoon. A habit of shipping
        one every week for two years can't be copied at all.
        Good luck with Shibui - ten people building things you never designed
        is the kind of traction most dashboards can't show.

      2. 1

        This comment was deleted 14 days ago

  6. 1

    I run free browser tools with no login too, so I’d push back a little on the idea that you need auth before you can measure this properly.

    A session-scoped ID plus one well-chosen completion event gets you surprisingly far. The metric that actually changed my decisions wasn’t visits, it was the percentage of sessions that completed a full run of the tool. That separates people who came to actually do the job from people who just bounced in from a search result.

    For your case, something like “sessions with 3+ queries” might be the equivalent. You can measure that today, using the traffic you already have, without putting a login wall in front of an SEO channel that’s clearly working.

    1. 1

      Thanks for the insights, something for me to investigate if the requests arrive with some kind of ID. It's a bit confusing for me, depending on the environment of the user (Claude Code vs Claude Web), the requests are coming either from the users IP or from Anthropic DC.

      1. 1

        That wrinkle actually makes your case cleaner, not harder. It confirms that IP was never going to be a useful identity signal anyway, since Claude Web traffic can all egress through shared Anthropic ranges.
        If your endpoint is an MCP server over HTTP, the protocol already gives you a session. The server can assign a session ID during the initialize handshake, and the client sends that ID back with subsequent requests in the same conversation. That gives you a session-scoped identifier without requiring any auth. The initialize request also includes the client name and version, so you could potentially distinguish Claude Code from Claude Web directly rather than trying to infer it from IP ranges.
        But if it’s a plain HTTP API, my recommended fallback would be a proxy that groups requests arriving close together with the same user-agent. It’s obviously less reliable, but for something like “conversations with 3+ queries”, you don’t need perfect attribution for the metric to be useful.

        1. 2

          The endpoint is an MCP server. Assigning a session ID during the handshake to the client, which the client then reports back, sounds awesome. I'll need to look into this. Thanks!

          1. 1

            For MCP’s Streamable HTTP transport, the server returns an Mcp-Session-Id header on the initialize response and the client sends it with every subsequent request. So “sessions with 3+ queries” is simply a count over that header, with no auth required and no dependence on whether the requests come from user IPs or Anthropic’s DCs.

            Curious to see what your completion-rate metric turns out to be once you have it.

  7. 1

    Can you elaborate on the SEO part? How did you find those long-tail queries, and how do you format your blog posts?

    1. 1

      I built my self a feedback loop by connecting Claude with GSC, Bing WT, Google Trends, Umami (web analytics) and Google Adwords for the keyword planner. Then I wrote a skill for Claude to pull the data from all sources and analyze it for potential new content, improvements on the current pages.
      Claude also writes the content and takes care of AEO/GEO/SEO friendly struture, including the Json LD elements.
      I run this together with the /claude-seo skill weekly to analyze how it went and to plan and implement new things.
      It's not a blog post but I'm trying to create topical clusters to get a good ranking, you can check https://shibui.finance how the pages are structured.
      Hope that helps, feel free to reach out!

  8. 1

    The SEO results are the part that stood out most to me — slow at first, but once it started working it became the only channel that kept compounding. Also interesting that the real use cases ended up being much more advanced than you originally planned for. Great example of letting users show you what the product should become.

    1. 1

      Thanks! In the beginning it required a lot of patience, it took 2-4 weeks between me publishing new content and seeing results in GSC and Bing WT, but now it seems to work and nicely compounding.
      By definition the service is very flexible, it's basically a financial database for which the LLM writes the SQL queries over the MCP protocol. It's amazing to see how capable the LLMs are when it comes to writing SQL.
      The next challenge is reaching out to users!

      1. 1

        That compounding effect is exactly what makes SEO worth sticking with. The outreach side will probably teach you just as much as the product usage did — especially which users immediately understand the value versus which ones need more education first.

  9. 1

    Disclosure: I run a lead-list tool (LeadGrid) with the same shape of problem, so read this as a self-interested view.

    The 46,000 is a volume number with no denominator. I count searches server-side keyed by the query, which means my dashboard counts queries and not people - one person running twenty variations of the same search shows up as twenty of something. Worth knowing which of those yours is before the number gets quoted back at you.

    On adding auth to measure properly: it will measure the population that agrees to sign up, which is not the population you have now. So it doesn't hand you the denominator for the 46,000 retroactively, and it quietly breaks the comparison going forward. If the denominator is the actual goal, a session or fingerprint estimate over the traffic you already have gets you closer and costs you nothing.

    The other thing I would protect is the Bing Copilot path. Someone arriving mid-question from an AI answer is the least patient visitor you have, and that channel is the one you said compounds.

    1. 1

      Thanks for the insights and sharing your experiences. That's my fear that by enabling authentication, people will just leave. On the other hand, that's the only way to get in contact with them. Not sure yet, but if i want to charge at some point, people have to signup anyways.

      1. 1

        Worth splitting the two things, because the thread has mostly solved one of them. Measuring distinct usage doesn't need auth - the session-ID answers above are right about that. What you said you can't do is reach the ten people, and no session ID will ever give you that.

        For the reaching part, the shape of the step matters more than whether there is one. An MCP server doesn't have to show anyone a signup form: Claude and ChatGPT both run the OAuth handshake inside the client, so what the user sees is a connect-and-approve screen, not an email field and a password. That's the same kind of screen they already went through to add your server in the first place, which makes it much cheaper friction than the one you're picturing.

        The harder question is what you send afterwards. Addresses collected because a wall demanded one go stale fast. Addresses given because you offered to tell someone when the data they query changed tend to survive.

        1. 1

          Thanks for the input, that helps. Looks like the friction is not as bad as I thought.
          The reason to reach out is to get some feedback on the product since a few users have been with the service for couple weeks. And would also try to find out if there is a willingness to pay for the service.

  10. 1

    On the free tier cap decision, one thing that helped us before landing on a number: cost per query, not call count. We do local speech-to-text plus an LLM cleanup pass per request, and the LLM step dominates cost by a wide margin, so a flat N-free-calls cap would have been badly mispriced against actual compute; a heavier request can cost 10-20x a simple one. We ended up bucketing free-tier limits by estimated compute cost per request type instead of one flat count, which also made it much clearer where the paid line should sit. Also, on the auth-friction worry: we saw better conversion gating the signup behind a few free actions people could take with zero signup, rather than an upfront wall, so they experience the real thing before we ask for an email.

    1. 1

      Thanks for your reply and outlining your approach. In my case the costs are more or less constant as my service doesn't call any LLMs. The service is implemented as an MCP server, so a user already needs to have an account with either ChatGPT or Claude in order to use the service. On the backend it's a simple DuckDB flat file that answers all the queries which gets rebuild once daily.
      Adding friction is actually my concern when it comes to adding an auth layer in front of the service. On the other hand currently there is only the free and unauthenticated plan. Not sure how to split it up (no auth free + auth paid?), I'll see.

  11. 1

    The 'none of these were use cases I designed for' line is the real insight here; that's usually the signal a product's actually found product-market fit vs. just working as intended. Curious about the 800 tool calls/day with only 10 power users; that's a huge amount of usage concentrated in a tiny group. Are you seeing any of them approaching you directly for a paid/higher-limit tier, or is it staying purely self-serve so far?

    1. 1

      Thanks for you comment. Not all of the daily 800 tool calls are from the power users, it's approx. around 5-10%, the remaining tool calls are from users just trying out the service and then leave.
      So far it's all self serving, I put up the MCP connector URL on the landing page and from there the people use it to connect their Claude/ChatGPT with the MCP server.
      Since it's all anonymous currently I don't have any emails from the users, my next step is to add an email form on the landing page and also add authentication to the MCP server. I hope to be able to reach out to them once implemented.
      None of them has me approached for a paid tier, currently there is only the free tier with full usage allowed. I'm a bit scared turning on authentication as this is an additional step users must do before using the service. Exciting nonetheless!

      1. 1

        That friction fear makes sense but you don't necessarily need full auth to start capturing emails. A lot of MCP/API tools solve this with an optional email gate only after a certain usage threshold (e after their 10th query, not before) keeps first-time visitors frictionless but still lets you capture the users who are clearly getting value. Might be a middle ground before you commit to full authentication.

  12. 1

    10 power users out of 46K queries is actually a stronger signal than it looks. Power users are the seed of the business — the question is whether you can find the pattern that makes them power users.

    The highest-leverage move at this stage isn't marketing spend; it's interviewing those 10 people individually. What were they trying to do the first time they came back? What did they try before you? What would make them pay? Ten conversations will tell you which niche to double down on, and that niche becomes the targeting for whatever marketing you eventually do.

    I see the same dynamic in the course/creator space (I run iLoquio): the creators who succeed almost never start with broad marketing. They find the 10 people who desperately need the thing, serve them unusually well, and let that density produce the case studies and word-of-mouth that make later marketing work.

    Also worth noting: $0 marketing spend with real usage means your unit economics are currently clean. Whatever you add next, protect that — paid acquisition before you know why power users stay tends to just buy churn faster.

    1. 1

      Thanks for your reply, reaching out to them is my next step, though I first need to implement authentication on the server to be able to capture their email address, currently the service is anonymous.
      Good advice to focus on the 10 power users who found the site, I've seen how they use the service and already did a lot of improvements for them to get clean data out of the service.
      Tbh. the first 2-3 month were daunting, nothing happened, no visits, no usage but then at some point the SEO work started to pull in some users and since then it's growing nicely, though on very low numbers.

  13. 1

    This is a great breakdown of the gap between measurement assumptions and real user behavior. You expected basic stock screening but users built 25-year tax-aware backtesting engines, insider-cluster detection systems, compliance screeners. That's the classic blind spot - your measurement system (what you thought users needed) was completely wrong, but usage patterns revealed what they actually valued.

    The other insight that stands out: SEO compounds, everything else decayed to zero. Twitter had zero conversions despite 120 tweets. Substack outreach got polite replies, zero retention. But search traffic keeps growing. That's the difference between building on owned channels vs rented attention - distribution channels determine which feedback signals actually reach you.

    1. 1

      Yup, I've somewhere heard "Inbound is king", and now I'm following this advice, the compounding effect is the best.