
From ₹5,000 Websites to ₹50,000 Months: My Student Freelancing Journey
This isn't a "get rich quick" story. This is the real, sometimes messy journey of how I went from charging ₹5,000 for a basic website to earning ₹50,000 in a single month while still being a college student.
The Humble Beginning: My First ₹5,000 Website
Date: March 2024
Client: Local bakery owner (friend's uncle)
Project: Simple 5-page website
Payment: ₹5,000
Time Taken: 3 weeks (way too long!)
The Website I Built:
Sweet Dreams Bakery
Sweet Dreams Bakery
Fresh Baked Goods Daily
Our Menu
Contact Us
Phone: +91-XXXXXXXXXX
Address: 123 Main Street, Nagpur
What I Learned from This First Project:
1. Scope Creep is Real: "Can you also add online ordering?" (for free, of course)
2. Communication is Key: Client wanted "modern" but I built "basic"
3. Time Management: 3 weeks for a simple site was embarrassing
4. Pricing is Psychology: I undervalued my work from the start
The Client's Feedback:
"It looks good, but can you make it more colorful? And add some animations? Also, my nephew says we need SEO - can you do that too?"
I said yes to everything. Big mistake.
The Learning Phase: Months 1-3
After that first project, I realized I needed to level up quickly.
What I Focused On:
1. Better Design Skills: Learned Figma, studied modern websites
2. Improved Development: React, responsive design, performance
3. Business Skills: Pricing, contracts, client communication
4. Portfolio Building: Created 3 impressive demo projects
My Self-Learning Curriculum:
// Week 1-2: Modern CSS and Design
.hero-section {
background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
min-height: 100vh;
display: flex;
align-items: center;
justify-content: center;
text-align: center;
color: white;
}.card {
background: white;
border-radius: 12px;
box-shadow: 0 10px 30px rgba(0,0,0,0.1);
padding: 2rem;
transition: transform 0.3s ease;
}
.card:hover {
transform: translateY(-5px);
}
// Week 3-4: React Components
import React, { useState } from 'react';
const ContactForm = () => {
const [formData, setFormData] = useState({
name: '',
email: '',
message: ''
});
const handleSubmit = async (e) => {
e.preventDefault();
// Form submission logic
try {
const response = await fetch('/api/contact', {
method: 'POST',
headers: { 'Content-Type': 'application/json' },
body: JSON.stringify(formData)
});
if (response.ok) {
alert('Message sent successfully!');
setFormData({ name: '', email: '', message: '' });
}
} catch (error) {
alert('Failed to send message. Please try again.');
}
};
return (
);
};
Demo Projects I Built:
1. Restaurant Website: Modern design with online menu and reservation system
2. Portfolio Template: Clean, professional layout for freelancers
3. E-commerce Store: Full shopping cart functionality with payment integration
The Breakthrough: Finding My Niche
Month 4: I realized that trying to be everything to everyone wasn't working. I needed to specialize.
My Analysis of Successful Projects:
- Small businesses needed professional websites
- They valued results over technical complexity
- They were willing to pay for convenience and reliability
- They needed ongoing support, not just one-time builds
My New Positioning:
"I help small businesses get professional websites that actually bring in customers - without the technical headaches."
The Services I Focused On:
1. Business Websites: Professional, mobile-friendly sites
2. E-commerce Stores: Simple online stores for local businesses
3. Website Maintenance: Monthly updates and support
4. SEO Optimization: Help businesses get found online
The Pricing Evolution
My Pricing Journey:
Phase 1 (Months 1-2): Underpricing
- Basic Website: ₹5,000
- E-commerce: ₹15,000
- Maintenance: ₹1,000/month
Phase 2 (Months 3-4): Market Research
I researched what other freelancers and agencies were charging:
- Local agencies: ₹25,000 - ₹1,00,000 for websites
- Freelancers: ₹10,000 - ₹50,000
- International rates: $500 - $5,000
Phase 3 (Months 5-6): Value-Based Pricing
- Business Website: ₹25,000 - ₹40,000
- E-commerce Store: ₹50,000 - ₹80,000
- Maintenance: ₹5,000/month
- Rush Jobs: +50% premium
The Psychology Behind My New Pricing:
// Old mindset: Cost-plus pricing
const websitePrice = developmentHours * hourlyRate + smallProfit;// New mindset: Value-based pricing
const websitePrice = clientValue conversionImprovement timeframe;
// Example calculation:
// Client's monthly revenue: ₹2,00,000
// Expected improvement: 20% more customers
// Value created: ₹40,000/month
// My fee: ₹30,000 (pays for itself in 3 weeks)
Month 5: The Systems That Scaled My Business
The Problem: I was spending too much time on admin tasks and not enough on actual development.
My Solution: Build systems and processes.
Client Onboarding System:
// Automated client questionnaire
const clientQuestionnaire = {
businessInfo: {
name: '',
industry: '',
targetAudience: '',
competitors: []
},
websiteGoals: {
primaryGoal: '', // leads, sales, information, etc.
successMetrics: [],
timeline: ''
},
designPreferences: {
style: '', // modern, classic, minimalist, etc.
colors: [],
inspiration: [] // URLs of websites they like
},
technicalRequirements: {
features: [],
integrations: [],
hosting: ''
}
};// Automated project timeline
const generateTimeline = (projectType, features) => {
const baseDuration = {
'business-website': 14,
'ecommerce': 21,
'custom-app': 30
};
const featureTime = {
'contact-form': 1,
'blog': 3,
'payment-gateway': 5,
'user-accounts': 7
};
let totalDays = baseDuration[projectType];
features.forEach(feature => {
totalDays += featureTime[feature] || 2;
});
return {
discovery: '3 days',
design: ${Math.ceil(totalDays * 0.3)} days
,
development: ${Math.ceil(totalDays * 0.5)} days
,
testing: ${Math.ceil(totalDays * 0.2)} days
,
launch: '2 days'
};
};
Project Management System:
I created a simple Notion workspace to track:
- Client information and requirements
- Project timelines and milestones
- Payment schedules and invoices
- Design assets and code repositories
Communication Templates:
// Project kickoff email template
Subject: Welcome to [Project Name] - Let's Build Something Amazing!Hi [Client Name],
I'm excited to start working on your website! Here's what happens next:
📋 Discovery Phase (Days 1-3):
- Review your questionnaire responses
- Research your industry and competitors
- Create initial wireframes
🎨 Design Phase (Days 4-8):
- Create homepage design mockup
- Get your feedback and revisions
- Design remaining pages
💻 Development Phase (Days 9-16):
- Build the website
- Add all content and features
- Test on all devices
🚀 Launch Phase (Days 17-18):
- Final testing and optimization
- Deploy to your domain
- Provide training and documentation
I'll send you updates every 2-3 days with progress screenshots.
Questions? Just reply to this email!
Best regards,
Suhas
The ₹50,000 Month: November 2024
The Projects That Made It Happen:
Project 1: Dental Clinic Website
- Client: Dr. Sharma's Dental Care
- Fee: ₹35,000
- Timeline: 2 weeks
- Features: Appointment booking, service pages, patient testimonials
// Appointment booking system I built
import React, { useState } from 'react';const AppointmentBooking = () => {
const [selectedDate, setSelectedDate] = useState('');
const [selectedTime, setSelectedTime] = useState('');
const [patientInfo, setPatientInfo] = useState({
name: '',
phone: '',
email: '',
service: ''
});
const availableSlots = [
'09:00 AM', '10:00 AM', '11:00 AM',
'02:00 PM', '03:00 PM', '04:00 PM'
];
const handleBooking = async (e) => {
e.preventDefault();
const bookingData = {
...patientInfo,
date: selectedDate,
time: selectedTime,
status: 'pending'
};
try {
// Send to Google Sheets via API
const response = await fetch('/api/book-appointment', {
method: 'POST',
headers: { 'Content-Type': 'application/json' },
body: JSON.stringify(bookingData)
});
if (response.ok) {
alert('Appointment booked successfully! We will call you to confirm.');
// Reset form
}
} catch (error) {
alert('Booking failed. Please call us directly.');
}
};
return (
);
};
Project 2: Fashion Boutique E-commerce
- Client: Trendy Threads Boutique
- Fee: ₹45,000
- Timeline: 3 weeks
- Features: Product catalog, shopping cart, payment gateway, inventory management
Project 3: Restaurant Website Redesign
- Client: Spice Garden Restaurant
- Fee: ₹20,000
- Timeline: 1 week
- Features: Menu display, online ordering, location map
Maintenance Contracts:
- 8 clients × ₹3,000/month = ₹24,000
Total November Revenue: ₹1,24,000
Expenses: ₹24,000 (hosting, tools, taxes)
Net Profit: ₹1,00,000
Wait, that's more than ₹50,000! Let me explain the difference between revenue and what I actually "earned."
The Reality Check:
- Time Invested: 180+ hours (including weekends)
- Hourly Rate: ₹555/hour
- Stress Level: Very high
- Social Life: What social life?
The Challenges Nobody Talks About
1. Scope Creep
Client: "Can you also add a blog? And social media integration? And maybe a customer portal?"
Me: "That wasn't in the original scope..."
Client: "But it's just a small addition, right?"
My Solution:
// Change request template
Subject: Change Request - Additional FeaturesHi [Client Name],
I'd be happy to add [requested feature] to your website!
This falls outside our original scope, so here's what it would involve:
Feature: [Description]
Time Required: [X] days
Additional Cost: ₹[Amount]
Impact on Timeline: [X] days delay
Would you like me to proceed with this addition?
Best regards,
Suhas
2. Payment Delays
Some clients treated freelancers like they could pay "whenever convenient."
My Payment Terms Evolution:
- Initially: 100% on completion (big mistake!)
- Later: 50% upfront, 50% on completion
- Finally: 40% upfront, 40% at milestone, 20% on completion
3. Difficult Clients
The Micromanager: Wanted daily updates and approval for every color choice
The Perfectionist: "Can you move that button 2 pixels to the left?"
The Cheapskate: "My nephew can build websites for ₹2,000"
My Client Screening Process:
const clientRedFlags = [
'We need it done yesterday',
'This should be quick and easy',
'We don't have a big budget but...',
'Can you work for exposure?',
'My last developer disappeared'
];const evaluateClient = (initialConversation) => {
const redFlagCount = clientRedFlags.filter(flag =>
initialConversation.toLowerCase().includes(flag.toLowerCase())
).length;
return redFlagCount < 2 ? 'proceed' : 'decline_politely';
};
4. Burnout
Working 12+ hours a day while managing college coursework was unsustainable.
Signs I Was Burning Out:
- Dreading client calls
- Making careless mistakes
- Procrastinating on projects
- Neglecting college assignments
The Systems That Saved My Sanity
1. Time Blocking
Monday-Wednesday-Friday:
09:00-12:00: College classes
14:00-18:00: Client work (development)
19:00-21:00: Admin tasks (emails, invoices)Tuesday-Thursday:
09:00-12:00: College classes
14:00-17:00: Client calls and meetings
17:00-20:00: Learning new skills
Saturday:
10:00-16:00: Focused development time
16:00-18:00: Portfolio updates
Sunday:
Rest day (mostly!)
2. Automated Invoicing
// Simple invoice generator
const generateInvoice = (client, project, amount) => {
const invoice = {
number: INV-${Date.now()}
,
date: new Date().toLocaleDateString(),
client: client,
project: project,
amount: amount,
dueDate: new Date(Date.now() + 72460601000).toLocaleDateString(),
paymentTerms: '7 days from invoice date'
};
// Generate PDF and send email
return invoice;
};
3. Template-Based Development
I created reusable components and templates to speed up development:
// Reusable React components
const HeroSection = ({ title, subtitle, backgroundImage, ctaText, ctaLink }) => (
className="hero"
style={{ backgroundImage: url(${backgroundImage})
}}
>
);const ContactSection = ({ phone, email, address }) => (
Get In Touch
);
The Advice I Wish I'd Heard Sooner
1. Specialize Early
Trying to be a "full-stack generalist" is a recipe for mediocrity. Find a niche and become the go-to expert.
2. Build a Strong Portfolio
Your portfolio is your best marketing tool. Showcase your best work and highlight the results you've achieved for clients.
3. Network Relentlessly
Attend industry events, join online communities, and connect with other freelancers and business owners.
4. Value Your Time
Don't be afraid to say no to low-paying projects or difficult clients. Your time is valuable, and you should be compensated accordingly.
5. Invest in Yourself
Continuously learn new skills, attend workshops, and read books to stay ahead of the curve.
The Tools I Can't Live Without
1. Figma
For designing website mockups and creating marketing materials.
2. VS Code
For writing code and managing projects.
3. Notion
For project management, client communication, and knowledge base.
4. Google Workspace
For email, documents, and spreadsheets.
5. Stripe
For processing payments and managing subscriptions.
The Mindset Shift That Changed Everything
From: "I'm just a student, I can't charge high rates"
To: "I provide valuable services that help businesses grow, I deserve to be compensated fairly"
From: "I need to say yes to every project"
To: "I can be selective about the projects I take on"
From: "I'm afraid to ask for help"
To: "I can learn from others and collaborate effectively"
What's Next for My Freelancing Journey?
1. Building a Team
I'm planning to hire a virtual assistant to help with admin tasks and a junior developer to assist with coding.
2. Creating a Course
I want to share my knowledge and experience with other students who are interested in freelancing.
3. Scaling My Business
I'm exploring new marketing channels and strategies to attract more clients.
Final Thoughts
Freelancing as a student has been one of the most challenging and rewarding experiences of my life. It's taught me valuable skills, helped me earn money, and given me the confidence to pursue my dreams.
If you're a student who's considering freelancing, I highly recommend it. It's not easy, but it's definitely worth it.
The Most Important Lesson:
You don't need to be an expert to start freelancing. You just need to be willing to learn, work hard, and provide value to your clients.
---
Want to connect and share your own freelancing journey? Find me through below mentioned links.
Want to see the websites I've built for clients? Check out my portfolio to see the real-world applications and the lessons learned from each one.
Suhas Dhawale
Full Stack Developer & Computer Science Engineering student passionate about creating modern, responsive web applications. Currently building SaaS products and sharing the journey through real stories and practical insights.