how to repeat texts up to 10,000 times quickly
DEV Community

how to repeat texts up to 10,000 times quickly

Step 1: Noticing the Signal

I was doing routine keyword research for a text utility site when I typed "sorry" into a search tool out of curiosity. The autocomplete and related-searches data showed something odd: write sorry 100 times as a real, recurring, high-frequency query. Not a fluke - consistent month over month.

Before you go further, here is an output example of the tool:

I am really sorry 🥺 I am really sorry 🥺 I am really sorry 🥺 I am really sorry 🥺 I am really sorry 🥺 I am really sorry 🥺 I am really sorry 🥺 I am really sorry 🥺 I am really sorry 🥺 I am really sorry 🥺 I am really sorry 🥺 I am really sorry 🥺 I am really sorry 🥺 I am really sorry 🥺 I am really sorry 🥺 I am really sorry 🥺 I am really sorry 🥺 I am really sorry 🥺 I am really sorry 🥺 I am really sorry 🥺 I am really sorry 🥺 I am really sorry 🥺 I am really sorry 🥺 I am really sorry 🥺 I am really sorry 🥺 I am really sorry 🥺 I am really sorry 🥺 I am really sorry 🥺 I am really sorry 🥺 I am really sorry 🥺 I am really sorry 🥺 I am really sorry 🥺 I am really sorry 🥺 I am really sorry 🥺 I am really sorry 🥺 I am really sorry 🥺 I am really sorry 🥺 I am really sorry 🥺 I am really sorry 🥺 I am really sorry 🥺 I am really sorry 🥺 I am really sorry 🥺 I am really sorry 🥺 I am really sorry 🥺 I am really sorry 🥺 I am really sorry 🥺 I am really sorry 🥺 I am really sorry 🥺 I am really sorry 🥺 I am really sorry 🥺 I am really sorry 🥺 I am really sorry 🥺 I am really sorry 🥺 I am really sorry 🥺 I am really sorry 🥺 I am really sorry 🥺 I am really sorry 🥺 I am really sorry 🥺 I am really sorry 🥺 I am really sorry 🥺 I am really sorry 🥺 I am really sorry 🥺 I am really sorry 🥺 I am really sorry 🥺 I am really sorry 🥺 I am really sorry 🥺 I am really sorry 🥺 I am really sorry 🥺 I am really sorry 🥺 I am really sorry 🥺 I am really sorry 🥺 I am really sorry 🥺 I am really sorry 🥺 I am really sorry 🥺 I am really sorry 🥺 I am really sorry 🥺 I am really sorry 🥺 I am really sorry 🥺 I am really sorry 🥺 I am really sorry 🥺 I am really sorry 🥺 I am really sorry 🥺 I am really sorry 🥺 I am really sorry 🥺 I am really sorry 🥺 I am really sorry 🥺 I am really sorry 🥺 I am really sorry 🥺 I am really sorry 🥺 I am really sorry 🥺 I am really sorry 🥺 I am really sorry 🥺 I am really sorry 🥺 I am really sorry 🥺 I am really sorry 🥺 I am really sorry 🥺 I am really sorry 🥺 I am really sorry 🥺 I am really sorry 🥺 I am really sorry 🥺

That's usually the point where most people scroll past and move on. I didn't, because a repeating pattern like that is a signal, not noise. Real people were typing that exact phrase into Google with real intent behind it.

Step 2: Figuring Out the Actual Intent

Search volume alone doesn't tell you what to build. I had to figure out what someone typing "sorry 100 times" actually wanted as an end result. A few possibilities:

  • They wanted to read about the phrase (informational intent)
  • They wanted a pre-written block of "sorry" repeated, ready to copy (transactional intent)
  • They wanted a meme or joke image

I checked what was already ranking. Almost everything was either a bare-bones repeater tool with poor UX, or low-effort content pages with no actual usable output. That told me the intent was clearly transactional - people wanted the text itself, generated instantly, not an article about apologies. And nobody had built a genuinely good tool for it.

That's validation. Not survey data, not a landing page test - just a clear, unmet, repeating demand with weak existing competition.

Step 3: Scoping the MVP Ruthlessly

It would've been easy to over-scope this. Add accounts, add a "save your history" feature, add social sharing, add a dozen preset categories. I didn't. The entire point of someone searching "sorry 1000 times" is urgency - they want output fast, not a feature tour.

So the MVP became intentionally minimal:

  • A text input, plus a few ready-made presets for common cases
  • A count selector - 100, 1,000, 10,000
  • A generate button
  • Copy button
  • Download as .txt button

That's it. No sign-up wall, no unnecessary steps between the search query and the result.

Step 4: Building and Shipping Fast

Because the scope was so tight, the build itself only took a few focused sessions. Plain HTML, CSS, and JavaScript - no framework overhead needed for something this contained.

I kept performance in mind from the start, since generating up to 10,000 repetitions needed to feel instant, not sluggish, or the entire value proposition falls apart.

I didn't wait for a "perfect" version. I shipped the minimal version, watched how real users interacted with it, and iterated afterward based on actual usage rather than my own assumptions.

Step 5: What I Learned Post-Launch

A few things surprised me once real traffic started coming in:

  • People use presets more than I expected. I assumed most users would type their own text, but a large chunk of users click straight into a preset and generate immediately. Reducing typing effort mattered more than I predicted.
  • The download button gets used more on mobile. Copy-paste on mobile keyboards is clunky when the block of text is huge, so a lot of mobile users prefer downloading the .txt file over trying to copy 10,000 lines by hand.
  • "Sorry 100 times copy and paste" style intent dominates. Almost everyone wants the output ready to paste somewhere immediately - a group chat, a text message, a caption - not a file to keep. Copy usage outpaces downloads by a wide margin.

The Bigger Lesson for Other Indie Devs

You don't need a groundbreaking idea to build something worth shipping. You need a real, repeating signal of demand, a clear-eyed read on what people actually want when they search that phrase, and the discipline to build only what solves that specific need - nothing more.

This entire project started because I refused to scroll past a weird, oddly specific search query. If you're doing keyword or market research for your own side project, don't dismiss the strange, hyper-specific queries. Sometimes those are exactly the ones nobody has bothered to build a good solution for yet.

If you want to see the finished result of this whole process, it's a live tool now - simple enough that you can generate something like sorry 10,000 times output in under ten seconds without writing a single line of code yourself.

Comments

No comments yet. Start the discussion.