I have a number of documents and spreadsheets which hold different information about them and when I list them all, it looks like a lot of mucking around; but I use them all differently and they suit how my mind works.
There's a primary "cattle numbers" document which holds all the records of the whole herd forever and their birth date, dam, sire, gestation period (used to put that in there, but it's duplicated elsewhere). I use this most regularly when thinking about cow families and who's who. I pull birth dates and tag numbers directly from here to upload as data files to the national Animal Identification scheme each year.
I have an annual calving date spreadsheet which I bring up more regularly as we approach spring and then update as they're born.
There's a gestation calculator (which I really ought to combine with the above, but just keep doing what I did before) and that runs for years, so I can easily search by dam, days etc. historically.
I also have a huge gestation data spreadsheet which gives me average gestation for the cows and the bulls I've used, along with herd averages for heifers, bulls, ai or natural, etc., that covers the 18 years or so of my herd's existence. That's a really interesting one to mess around in.
I also (of course) have a treatments spreadsheet with all the cattle listed so I can record when they receive routine treatments.
What I'd really like is a super-duper management program which ties all these things together without my having do to endless data-entry to set it up and which doesn't cost me a bomb.