Restrotrack
Connect your database — one time setup
Your data will live in Supabase — a free cloud database. This means all your devices and team members see the same numbers, always in sync.
1
Create a free Supabase account & project
Go to supabase.com → Start your project → sign up → New project. Pick any name, any region, set a database password.
2
Run this SQL in your Supabase project
Go to SQL Editor in the left sidebar → New query → paste the code below → click Run.
create table if not exists restaurants ( id uuid default gen_random_uuid() primary key, user_id uuid references auth.users not null, name text default 'My Restaurant', type text default 'casual', currency text default '₹', seats integer default 0, created_at timestamptz default now(), unique (user_id) ); create table if not exists monthly_entries ( id uuid default gen_random_uuid() primary key, user_id uuid references auth.users not null, month text not null, year integer not null, income jsonb default '{}', cogs jsonb default '{}', labor jsonb default '{}', overhead jsonb default '{}', marketing jsonb default '{}', maintenance jsonb default '{}', updated_at timestamptz default now(), unique (user_id, month, year) ); alter table restaurants enable row level security; alter table monthly_entries enable row level security; create policy "own_restaurant" on restaurants for all using (auth.uid() = user_id) with check (auth.uid() = user_id); create policy "own_entries" on monthly_entries for all using (auth.uid() = user_id) with check (auth.uid() = user_id); -- Security audit log: records auth events and anomalies create table if not exists security_logs ( id uuid default gen_random_uuid() primary key, user_id uuid references auth.users, event_type text not null, severity text not null default 'info', ip_hint text, details jsonb default '{}', created_at timestamptz default now() ); -- Only authenticated users can insert their own logs; no one can read or update alter table security_logs enable row level security; create policy "insert_own_log" on security_logs for insert with check (auth.uid() = user_id); -- Indexes for efficient querying by event type and time create index if not exists idx_sec_logs_user on security_logs(user_id, created_at desc); create index if not exists idx_sec_logs_type on security_logs(event_type, created_at desc); -- Rate limit function: count recent events per user create or replace function check_auth_rate_limit(p_user_id uuid, p_window_minutes int, p_max_events int) returns boolean language sql security definer as $$ select count(*) < p_max_events from security_logs where user_id = p_user_id and event_type = 'auth_failure' and created_at > now() - (p_window_minutes || ' minutes')::interval; $$;
3
Paste your Project URL and API key below
In Supabase → Project Settings → API → copy Project URL and the anon / public key.
Credentials are stored only in your browser and sent only to Supabase.
Built for Restaurants & Cafés

Run a smarter restaurant.

Track every rupee — food cost, labour, delivery revenue, overheads — and know exactly where your profit stands. Every month.

40+
Metrics tracked
6
Expense categories
8
Restaurant types
₹0
To get started
Sharma's Café • March 2025
Revenue
₹1.8L
Net Profit
+₹21K
Food Cost
31%
Labour %
32%
Prime Cost
63%
Net Margin
11.6%
▲ 8% vs last month
Everything you need
Built for the real
restaurant floor
Not generic accounting software. Purpose-built for how restaurants actually track money.
📊
Live P&L Dashboard
Revenue, expenses and net profit update in real time as you type. No waiting, no manual calculations.
🔄
Syncs Across All Devices
Enter data on your phone, view on your laptop. You and your manager always see the same numbers.
🥩
Granular Food Cost
14 ingredient categories to pin down your food cost % to the nearest rupee, every month.
👨‍🍳
Full Labour Breakdown
Chefs, waiters, manager, delivery staff, housekeeping — including PF, ESI and staff meals.
📈
Industry Benchmarks
Food Cost %, Labour %, Prime Cost % colour-coded vs industry standards. Know instantly if you're in trouble.
🏪
All Restaurant Types
Casual dining, fine dining, café, QSR, bar, cloud kitchen, catering — one tool for every format.
Simple pricing
One price. No surprises.
Starter
Free 14-day trial
No credit card required

  • Full access for 14 days
  • All income & expense categories
  • Live P&L dashboard & charts
  • Syncs across all your devices
  • Per-dish costing & weekly tracker
After trial, pick a paid plan or stop — no charges automatically
Most popular
Pro
₹999 /mo
Per outlet · billed monthly  •  Save 17% quarterly → ₹2,499

  • Unlimited months of data
  • All Trial features, forever
  • PDF & Excel monthly report export
  • WhatsApp & email cost alerts
  • Multi-staff access (manager + owner)
  • Priority support
First 14 days free — cancel anytime
Chain
₹1,999 /mo
Up to 5 outlets · billed monthly

  • Everything in Pro × 5 outlets
  • Multi-branch consolidated dashboard
  • Branch vs branch P&L comparison
  • Central owner view across all outlets
  • Dedicated onboarding call
  • Custom reports on request
₹399/mo per additional outlet
Forgot password?
or
Secured by Supabase Auth — passwords never stored here