Today, I want to share the story of how RailTC was built, how the idea came to me, how I started working on it, and where we have reached today.
The journey of RailTC began in the last week of January 2026, shortly after January 20, when Google had just released Antigravity. It was the talk of the tech community, and people were discussing it enthusiastically.
Around that time, one of my close relatives called me, as they had done many times before, to ask about the PNR status of a train ticket. This was something they had always relied on me for.
At the same time, Antigravity had just entered the market, and I was curious to experiment with it.
I installed Antigravity and joined a WhatsApp community where people were actively discussing it. Members were sharing how to install it, connect it with OpenCode, and use Gemini through it.
Fortunately, I had a Jio SIM, through which I had received a complimentary annual Gemini Pro subscription. So I had everything I needed to get started.
After setting everything up, an idea came to my mind.
Despite the availability of so many PNR status checking tools in the market, why were people still asking others to check their PNR status? Why couldn't they simply do it themselves?
That question became the foundation of RailTC.
I wanted to build a tool so simple that even an ordinary Indian Railways passenger, regardless of their technical knowledge, could check their PNR status without needing anyone's help.
And that was it. I opened Antigravity, connected it with Gemini, and started building.
Chapter 01The first prototype
Within approximately three hours, I had built a working prototype, or what you could call a proof of concept (POC).
It was a Saturday, in the last week of January. I still remember it clearly because Saturday was my day off from work.
At that point, I had no plans to turn it into a full-fledged product. It was just a random experiment, a simple concept I wanted to explore.
The prototype had a cartoon-style user interface, a field where you could enter a PNR number, and a section displaying the result for a test PNR.
That was pretty much it.
Since the AI wave had already begun, I had also added AI to the prototype to explain the results.
After building it, I found the concept genuinely interesting. I felt that it had the potential to become something much bigger.
But before taking it seriously, I wanted to see whether others felt the same way.
Chapter 02From a concept to a product
I shared the prototype and its demonstration video with my senior, Salman Bhai, and at the same time posted it in the same WhatsApp community where people were discussing Antigravity.
Salman Bhai encouraged me tremendously. He told me that the idea was worth pursuing as a proper product.
People in the community also appreciated the concept and encouraged me to work on it.
One person even told me:
"This will be your Where Is My Train phase."
The founder of Where Is My Train was also a member of that community, which made the comment even more encouraging.
That gave me the confidence to move forward.
I decided to take the idea seriously and, over the next two or three days, worked on building a more complete version of the product.
That was when the initial POC evolved into something closer to an MVP.
The next challenge was finding a domain name.
I discussed it with my seniors, Salman Bhai and Isaar Bhai, who is also my mentor. Together, we finalised the name RailTC, which I had suggested, and purchased the domain.
Now we had a product, a name, and a domain. The next step was getting it live.
Chapter 03Taking RailTC live
The next challenge was deciding where to host the product, which server to use, and what infrastructure would be suitable.
My company's owner, Moin Bhai, helped me tremendously with this, along with Salman Bhai.
After discussing the project with them, I was told that I could use one of the servers already available within the company's infrastructure.
So I deployed RailTC, connected it to the domain, and finally made it publicly accessible.
After launching it, I shared the news in the same community.
Soon after, Chaudhary Abdullah, one of the moderators of the community, sent me a direct message.
He said that the product looked promising but that the UI needed improvement.
He was right.
So I started working on improving the user interface and making the overall experience better.
At the same time, I realised that I needed to work on SEO, something I didn't know much about at the time.
I asked the community for guidance, and that's when Aqib Bhai, an experienced SEO engineer, reached out to me.
He explained how SEO works, how to manage it, and what I needed to focus on to improve the website's visibility.
Alhamdulillah, things started moving much faster than I had expected.
Chapter 04The first month: an unexpected breakthrough
You won't believe what happened next.
Within the very first month, RailTC started gaining significant traction.
I didn't spend any money on paid marketing. Instead, I focused on organic growth, particularly through Reddit.
The reason I chose Reddit was that I had previously seen several messages from Chaudhary Abdullah in the community explaining how his first product, Super Dev Pro, had gained traction through Reddit.
That inspired me to try the same approach.
I started sharing RailTC in relevant Reddit communities, particularly those related to Indian Railways.
My very first post in the Indian Railways subreddit received approximately 5,000 views in a single day.
That was the beginning of a much larger response.

Aqib Bhai then explained how Google crawls and indexes Reddit content, how Reddit discussions can contribute to SEO, and why backlinks and other SEO fundamentals matter.
With his guidance, I began understanding the technical side of organic growth.
I also set up Google Analytics and Google Search Console, which allowed me to track the website's performance and understand how people were discovering RailTC.
From that point onward, I started working consistently on SEO, content, and the overall product experience.
Chapter 05The growth: from hundreds to thousands of clicks
Here is how RailTC's Google Search performance evolved during its first months.
Google Search Console performance
| Period | Total clicks | Impressions | Average CTR | Average position |
|---|---|---|---|---|
| Jan 20 to Feb 20 | 689 | 18K | 3.8% | 9.3 |
| Feb 20 to Mar 20 | 9.59K | 153K | 6.2% | 5.5 |
| Mar 20 to Apr 20 | 82.6K | 552K | 15% | 4.8 |
The growth was incredible.
In just two months, we went from 689 clicks to more than 82,000 clicks per month.
And the journey didn't stop there.
Chapter 06Where we stand today
Looking at the last 28 days, RailTC has achieved:
- 142,000 clicks
- 3.54M impressions
- 4% average CTR
- 7.2 average position
And if we look at the overall performance from January 20 to November 3, 2026, the numbers are even more encouraging:
- 957,000 total clicks
- 12.9M total impressions
- 7.4% average CTR
- 6.5 average position
And the product itself has grown just as much. These are the live numbers from RailTC today, 4 November 2026:
- 498,005 predictions tracked
- 455,470 journeys completed and checked against the final chart
- 89.3% all-time accuracy on the predictions we score, and 94% in the Safe band
- 13,000+ pages for trains, routes, running status and seat layouts
- 7 languages: English, Hindi, Tamil, Telugu, Bengali, Marathi and Urdu
- 5K+ downloads of the Android app on Google Play
Every one of these accuracy numbers is public. RailTC grades its own predictions after every journey and shows the result on its accuracy page, including the bands where it is weaker.


These numbers represent a tremendous amount of growth, especially considering how the project started as nothing more than a three-hour experiment.
Chapter 07Under the hood: a small glimpse
What started as a single page with a cartoon UI is now a complete system. I won't share everything here, but I want to give you a small glimpse of how RailTC works today.
The pieces
- The website is built with Next.js 16, React 19 and Tailwind CSS 4. Pages are rendered on the server, so Google can read every one of them. It supports seven languages and a dark mode.
- The Android app runs the same frontend code inside a native shell, with its own bottom tabs: Home, Trips, Track, Pre-Book and More. One codebase serves both.
- The API is written in Python with FastAPI, and PostgreSQL 16 stores every check, every prediction and every real outcome.
- A separate worker runs all the background jobs, so a heavy job never slows down a passenger's request.
- Cloudflare sits in front of everything, and payments run through Cashfree, UPI first.
What happens when you check a PNR
- You type your PNR, or scan the barcode on your ticket. The photo never leaves your phone.
- RailTC fetches the live booking status. If the same PNR was checked a few minutes ago, it answers from a short-lived cache.
- The prediction engine scores the chance of confirmation and saves the check.
- You see the result as Safe, Medium or Risky, along with a recent trend and an expected confirmation window.
- After the chart is prepared, a background job records what actually happened. That result feeds the public accuracy page and the next round of training.
The prediction engine
This is the part I am most proud of.
RailTC uses a hybrid engine. One half is a set of machine learning models, trained only on journeys whose final chart outcome we have verified. The other half is a transparent baseline that scores the things anyone can understand: quota, class, time left until the chart, and route patterns.
The models are retrained every week. A new model is never trusted blindly. It first runs in a shadow test next to the current one, and it goes live only if it does better.
And most importantly, the engine is honest about itself. Predictions in the Medium band are tracked but not counted in the accuracy number, because an uncertain answer should not be dressed up as a confident one.
Built for search
SEO was where I knew the least when I started, so I treated it as engineering.
RailTC has more than 13,000 pages for individual trains, routes, running status and seat layouts. Each one is rendered on its first visit and refreshed every few hours, so it is fast for people and readable for Google.
Before every release, a snapshot tool compares the title, headings, FAQs and structured data of every page with what is live in production. When we redesigned the entire site recently, that check is how we made sure we did not lose a single ranking signal.
Built to stay up
Deploys happen with zero downtime. The new version starts next to the old one and is health-checked page by page. Only when every check passes does it receive traffic. If anything fails, traffic simply stays on the old version.
When the railway's own systems are slow or down, RailTC shows a clear message instead of an error. Emails go through two providers, and if one fails, the other takes over automatically.
None of this existed on that first Saturday. It was built one problem at a time, usually right after that problem showed up.
Chapter 08The AdSense lesson
One more learning I want to share is about Google AdSense, because getting it activated was much harder than I expected.
It took me almost two months to get AdSense approved for RailTC.
At first, I thought that if a website has traffic, AdSense would approve it easily. But that is not how it works. AdSense is meant for websites that are content heavy. A tool where you enter a PNR and see a result is useful, but for Google, a single page like that is not enough content.
So in those two months, I learned what Google actually looks for, and I had to work on the website accordingly.
These are the main rules to get approved by AdSense:
- Original, high-quality content. Your content must be your own and genuinely useful, and it should attract an audience. Thin pages or content copied from other websites will not be accepted.
- Enough content on every page that shows ads. Ads are not allowed on pages with little or no content, or on pages that are still under construction.
- Follow the AdSense program policies. Your website must follow Google's policies before you apply, and you have to keep following them after approval.
- Access to your website's code. You need to be able to add the AdSense code to your site's HTML.
- Be at least 18 years old. Otherwise, a parent or guardian has to apply on your behalf.
- Content in a supported language. The main content of the site must be in a language AdSense supports.
- Ads must never be more than your content. They also should not be placed where people can click them by mistake, like next to buttons or navigation.
- An ads.txt file. If your site has one, Google must be listed in it as an authorized seller.
Alongside these, I made sure RailTC had clear About, Contact, Privacy Policy and Terms pages, so both users and Google could see who runs the website and how their data is handled.
This process is also one of the reasons RailTC has so many pages today. Pages for trains, routes, running status and seat layouts made the website genuinely content heavy, and they also helped people find RailTC through search.
Looking back, those two months taught me that AdSense is not only about traffic. It is about building a website that has real value for its readers.
Chapter 09The financial milestone
As of today, RailTC has generated more than ₹45,000 in earnings.
And if we include the revenue generated through Google AdSense, we have crossed ₹50,000 in total earnings.
For me, this is a significant milestone.
Not because the amount itself is enormous, but because it represents what can happen when you take an idea seriously, put in consistent effort, and keep improving something that people genuinely need.
Chapter 10What I learned from this journey
Looking back, the most interesting thing about RailTC is that it didn't begin with a business plan, a funding round, or a detailed product roadmap.
It started with a simple problem.
People kept asking me to check their train PNR status, and I wondered why they couldn't do it themselves.
That one question led to an experiment, which eventually became a product.
Along the way, I received tremendous support from my seniors, mentors, and the community. I learned about SEO, marketing, product development, and building something that people actually find useful.
But above everything else, this journey has strengthened my belief in one thing.
When you genuinely commit yourself to something, work consistently, and seek the right guidance, Allah can open doors you never imagined.
Alhamdulillah, I am grateful for everything that has happened so far.
And In Sha Allah, this is only the beginning.
There is still so much more to build, so many improvements to make, and so many opportunities ahead.
My purpose in sharing this story is simple: to show how RailTC started, how far it has come, and what can happen when you take an idea, believe in it, and work towards making it a reality.
Sometimes, all it takes is a simple question, a little curiosity, and the courage to start.
And with Allah's help, that little beginning can turn into something much bigger.
You can try RailTC at railtc.in, or get the Android app.
