10
20 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?

  2. 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 in consistently creates the compounding effect. Good luck with your venture!

  3. 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.

  4. 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!

  5. 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!

  6. 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.

  7. 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.

  8. 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!

  9. 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.

  10. 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.

Trending on Indie Hackers
I built a launch coach after my own product launch got 11 upvotes and 3 signups User Avatar 93 comments I told a founder to get listed on the review sites. Her report showed AI was citing her competitors' homepages. User Avatar 39 comments 700 downloads and stuck — five months later... User Avatar 37 comments Most directories forget you exist after you list. We're trying something different. User Avatar 36 comments Built TermsGuard to explain contracts in plain English — looking for feedback User Avatar 29 comments Update: clawed back from ~3-4K to ~8-9K daily clicks after the May Google core update — here's what actually worked User Avatar 27 comments