Setting Up a Baby Tracker Without Spending Any Money
I made the mistake of buying three different baby tracking apps before I turned 30 and realized most of them were just expensive spreadsheets with fancy icons. The one that stuck was a simple Google Sheet I built myself. It has survived two children, multiple phone upgrades, and one very stressful 3 AM session where I was logging feed times while sleep-deprived enough to type numbers into the wrong cells. That last part is exactly why I eventually added a couple of simple scripts to it. Baby tracking apps all promise the same thing: simplicity, real-time sync, pretty graphs. What they don't tell you is that most free tiers lock export functionality behind a paywall, and the paid tiers are usually $8 to $15 a month per child. A spreadsheet costs nothing after the initial setup, and your data stays yours. I started with a barebones sheet and have been adding to it for five years. My wife still uses the same one we built in month two. The core columns you need are far fewer than most people think. Feed time, duration, side, type (breast or bottle with ounces if applicable), sleep start, sleep end, diaper type, and notes. That is six columns. Everything else is noise. When my first child was a newborn, I tracked eight different categories and barely looked at half of them after week three. The only data that ever mattered was the feed and sleep logs. I stripped everything down to those two sheets.
Here is the setup. Open a new Google Sheet. Rename the first tab Feeds and the second Sleep. In Feeds, add these column headers in row one: Date, Start Time, End Time, Duration, Type, Side, Notes. In Sleep, add: Date, Bedtime, Wake Time, Total Hours, Nap, Notes. That is literally it for the foundation. Set the Date column to date format and the time columns to hh:mm format so calculations work cleanly. If you skip the formatting step, you will spend three weeks wondering why your duration formula returns errors instead of numbers. For duration, use a simple subtraction formula. In the Duration cell of row two on the Feeds sheet, enter =C2-B2 where C is End Time and B is Start Time. Format that cell as [h]:mm so it displays correctly when a feed runs past midnight. Babies feed at odd hours. This format handles overnight sessions without breaking. Do the same math for Sleep using total hours = (Wake Time minus Bedtime). If the baby naps across noon, the formula still works. If it crosses midnight, add =IF(C2B2,C2-B2+1,C2-B2) to account for the day rollover. I learned that one the hard way during a night shift rotation. Once the columns are set up, lock the header row so it stays visible while scrolling. View, Freeze, 1 row. Then protect the sheet against accidental edits by going to File, Share settings, and restricting edit access to only yourself and your partner. Nothing ruins a week of logged data faster than a toddler smacking the tablet and deleting half your entries.
For entry speed, which is the whole point of tracking anything, build a second tab called Quick Log. Add dropdown menus for Type and Side using Data, Dropdown. List Breast, Bottle, Formula under Type and Left, Right, Ounces under Side. Dropdowns cut entry time down to roughly five seconds per feed instead of the twelve to fifteen seconds it takes to type everything out. Over a year of roughly 6,000 feeds, that is somewhere between 20 and 30 minutes of your life you get back. It sounds small. It adds up. If you want to get past the basic setup, there are a few things most people miss. First, batch your entries if you are the type who hates stopping mid-task. You can log three feeds back-to-back in under 30 seconds using the tab key to jump between cells. I kept a sticky note on the wall next to my feeding chair with the column order so I would not have to think about it while holding a baby. Second, use conditional formatting to color-code entries by type. Select your Type column, go to Format, Conditional formatting, and set Breast to light blue and Bottle to light yellow. You will spot patterns in a single glance instead of reading down a list of text values. There is a specific edge case that caught me off guard with the Sleep tab. If your baby takes a nap that starts at 2:45 PM and ends at 4:10 PM, the basic duration formula gives you 1:25, which Google Sheets reads as 1 hour and 25 minutes. But if you want the total in decimal form for averaging purposes, use =(C2-B2)*24 and format the cell as a number with two decimals. That gives you 1.42 hours. I only figured this out after my pediatrician asked me to bring average sleep durations and I spent twenty minutes doing manual conversions. One formula does all of it instantly.
Get the Full Details

I also recommend adding a third tab called Diapers if you are tracking a newborn. Wet, dirty, and mixed are the three categories that matter. Date, Time, Type, Notes. Same dropdown approach. Newborns go through eight to twelve diapers a day, and having that log visible stops you from second-guessing whether the rash on day four was from the new wipes or just the volume. My son had a breakout at ten days old and the diaper log confirmed it was the brand switch, not the feeding schedule everyone kept asking about. For anyone who wants to go further without paying for an app, Google Apps Script can add a couple of useful automations. One simple script logs the current timestamp automatically when you enter data in a new row. Another generates a weekly summary that adds up total feed hours, average sleep duration, and diaper counts. I wrote a basic one that emails me a Sunday night report. It takes about fifteen lines of code and thirty minutes to set up if you follow the Google Sheet script editor tutorial. The payoff is that I stop feeling like I have to manually compile data every time someone asks how the baby is doing. There are real limitations to this approach that you should know about before investing the time. The biggest one is that it requires manual entry every single time. There is no sensor, no wearable integration, no automatic detection. If you are inconsistent with logging, your data becomes useless within two weeks. I have watched multiple parents abandon a spreadsheet because they started missing entries during busy weeks and then felt guilty about it, which made them stop altogether. A tracker only works if you actually use it, and spreadsheets demand more discipline than most people expect.
Syncing between devices is another friction point. Google Sheets syncs reasonably well, but if both parents are editing on their phones at the same time, you can hit conflict resolution popups that erase or duplicate rows. It happens infrequently, maybe once every few weeks, but when it does, you lose data. The workaround is simple: designate one device as the primary entry point and have the other parent only view. My wife uses an iPad at home for entries while I use my phone at the hospital nursery. It cuts sync conflicts to near zero. Another drawback is that spreadsheets do not handle complex queries well without additional work. If you want to see all feeds longer than 45 minutes from the last two weeks, you need to set up a filter view or use QUERY functions, which adds a layer of complexity that defeats the purpose of keeping things cheap and simple. For most parents, filter views are enough. Only build custom reports if you find yourself reaching for the same filtered view multiple times a week. If this manual approach is not your style, there are legitimate free alternatives. BabyConnect offers a free tier with basic tracking and sync between two accounts. Hatch includes sleep and feeding logs in its free plan alongside sound machine functionality. The tradeoff is that you still hand your data to a company, and the free tiers will eventually push you toward paid features. A spreadsheet has no such pressure. You can use it for twelve months and never encounter a single upsell prompt.
The template itself is straightforward to duplicate. Once you have a working sheet with formulas and formatting, go to File, Make a copy, and rename it for your second child or for sharing with a babysitter or grandparent. I passed mine to my mother-in-law when we traveled, and she logged entries without needing any explanation because the columns are self-explanatory. That portability matters more than any app feature I have tried. If you search for a Cheap Baby Journal Tracker online, you will find dozens of paid templates and even more abandoned projects from companies that pivoted away from free tools. The version I am describing is not available as a pre-made download because the whole point is that you build it for your own needs. But the structure is simple enough that you can replicate it in an afternoon. Start with the two-tab base, add the Quick Log tab with dropdowns, format your time columns correctly, and iterate from there based on what you actually find yourself looking for after the first month. The data you collect matters less than the habit of collecting it. Five years in, I still look back at those early sheets and wish I had been more consistent. The alternative is forgetting the details entirely, which is what most parents end up doing. A free spreadsheet is not glamorous. It does not send you push notifications or generate cute milestone summaries. It just records what happened, and sometimes that is all you need.
