2023 Numbers, and 2022

It seems that last year I forgot to make my annual blog post summarizing the numbers for the farm’s prior year, so I’ll fix that here and give the update for the last two seasons. Short headline should be that 2023 was by far my worst farming year, financially speaking, ever. Embarrassingly so – but I’m still learning and these blog posts on the numbers are all about sharing to encourage others to run their numbers, learn and share, too, so here we go.

Partly because 2023 was so bad, and partly because I’m in the middle of planning out some changes anyways I spent a little more time with the numbers this year and generated some nice graphs so I’ll share a bit more than I usually do. The last one of these posts was on the 2021 numbers and you can see those by following this link (or just searching for “numbers”) in the search box.

The main number I track from year to year is what is best described as the “net dollars per hour generated” by the farm. Simply, this is the total revenues minus the non-labor expenses, divided by the total number of hours worked by everyone on the farm – including me, the owner. You can go back into the earlier blog posts for more on some of the things that can complicate putting this number together. I think of it as kind of an average hourly wage on the farm across all of the people who work on the farm. 

For 2022 the number was $18.19 per hour, which was actually the best number I’ve recorded in past 7 years of tracking at Cully Neighborhood Farm. I had a very similar number  ($18.17) in 2018 and that year I was able to give good bonuses to employees. Because the minimum wage was much higher in 2022 than in 2018, and more employees were above the minimum wage, that didn’t happen last year.

In 2023 the number was $11.74 per hour, well below minimum wage. When that average hourly wage drops below the loaded minimum wage it means that the employees are making more than the owner. By loaded minimum wage I mean minimum wage plus payroll taxes. Minimum wage in Portland was $15.45 this year, and loaded it’s $16.75.

In the graph above you can see that minimum wage in Portland has been rising steadily (the red line) while the net dollars per hour generated by the farm has been less consistent (the blue line). That inconsistency is to be expected to some extent, although ideally it would generally trend upward. Instead it has generally trended flat. Part of this is probably that while minimum wage has been rising steadily at about 5% per year, while our prices haven’t. Labor (including owner labor which most people will record as profit, not labor expense) is consistently about 80% of our total expenses, so it has a bigger impact on our costs than any other factor by far.

In the graph above you can see how closely the gross and net before labor track, which just shows that our non-labor expenses are very consistent. From 2017 to 2021 we were growing a similar number of beds and just harvesting from mid-spring to mid-fall. In 2022 we changed our bed layout which gave us slightly more space and we started harvesting year round. The numbers don’t tell the full story here, but it does seem that may have been good for the income of the farm – part of the reason we did it. In 2023 we gave up about a quarter of the space we had been growing on to let Vicolo farm start up next to us. The impact there was complicated and I’ll talk about that after looking at the next graph, full-time-equivalents per acre versus actual.

Since 2017 we’ve had multiple people employed by the farm, but everyone, including me, works part time. In the graph above I’ve calculated how many people would have been working if they were working full time, and you can see it’s right around one person (the red line). The blue line is that number divided by the amount of space we were cultivating, and it’s very significant that the number jumps in 2023. That is literally why the average hourly wage was so low.

There were a few contributing factors here, but I think the most significant was that I made a mistake in my labor plan for the year, essentially not adjusting our projected labor needs down enough at the beginning of the year to make up for the reduced revenue from growing on less ground.

At the same time a couple other things happened that contributed: one was that I had unexpected turn over in my crew mid-season which meant hiring and training new folks mid-season; another was that I was terrible about limiting my own hours, especially during CSA pick up at the end of the day when I’m the least productive.

There are a number of fixed costs on the farm that don’t shrink even though the production area footprint and gross of the farm has shrunk, and that means we need to be a little more efficient with our labor and other production costs. Unfortunately I was the opposite of more efficient, and because I hadn’t budgeted properly at the beginning of the season I wasn’t getting the signal I should have when I was checking my numbers each month. I could see that we were a little over on labor, when in reality we were quite a bit over on the labor budget. 

Growing conditions for the year, the uncontrollable factor, were also not favorable, and that was compounded by growing conditions the prior year which had contributed significant weed seeds, which in turn increased the weed pressure and need for labor.

I have more thoughts on all of this, but I’m going to wrap up here for now. I will be offering a session on this kind of analysis and the record keeping that allows me to look at these numbers easily at the Oregon Small Farm Conference next month. I have some ideas for changes in 2024 to address the avoidable problems we had in 2023 and I’m also hoping, as I do every year, for favorable weather and lower pest pressure!

Mapping Out the Crop Plan

This is a companion article to my last post on crop planning using spreadsheets. A version of this article was published in Growing for Market’s February 2010 issue.

Maps in time and space

A basic spreadsheet application, like the ubiquitous Microsoft Excel, finds many uses in my farm office. It functions as a calculator, a database, an analytical tool, and a planning tool, and it even provides what I like to think of as a very editable piece of graph paper for making maps in time and space. I’ve been using these maps for a couple of decades now for planning out complex crop placements within fields, working out crop rotations, passing on instructions to field crews, keeping information dense, compact crop records, and as a cheat sheet in creating weekly and daily to lists during the season.

Time and space?

Most field maps that I see are maps of space showing the outlines of the fields, sometimes with the important dimensions and any relevant features noted. I do keep a copy of a map like this to use occasionally, and they can be made using a spreadsheet by doing things like adjusting the column widths and/or row heights, and merging or outlining cells. I usually have one tab of my spreadsheet workbook that has an overview map of the farm like this explaining the bed numbering system. But the map I use the most in planning is one that isn’t an overhead view, it’s one that includes a time axis.

My maps are more like a graph with the x-axis (columns) representing time and the y-axis (rows) representing the location within a field. One of these maps is easily made on a piece of graph paper or in a spreadsheet. First I make a header row (orient the paper portrait style so that the long edge is on top). For my header row I put a Monday date in each of the boxes along the top of the graph paper. Of course you’ll need a piece of paper with at least 52 boxes across the top to make this work as there are 52 mondays in a year. The first row below this represents the first bed in a field, the second represents the next bed, and so on. 

I also use this system in gardens, although many times garden beds are not very homogenous, comprising many plantings in a single bed. In this case I might use more rows to represent a single bed. As an example, on my current farm we have beds that are 160′ long, but we’re typically thinking of each one of those beds as four 40′ beds so each of the 40′ sections gets its own row.


I’ve developed a shorthand that I use to represent different common events within the bed. This allows me to fit a lot of information into a very small sheet of paper, and to easily and quickly interpret that information years later when I go back to figure out what happened to a particular crop, or bed in a field. All of this information is especially useful in planning future crops. The shorthand I use is for common occurrences that are noted many times, such as: H for harvest, M for mowing, T for tilling, and vertical lines to represent the start and end of a crop.When I do make additional notes I want to make sure that I’ll understand what I meant many years later and so I write them so that anyone on the farm could understand with relative ease. Time and again I’ve found that if I’m not very clear in my meaning that even weeks later I can’t remember what I meant by incomplete notes.

On the map each row represents a planting section and reading across a row you can see the progression of a bed through the season. Starting in the first block on a row (which represents the first week of the year) I’ll usually make a note of what winter cover crop is planted in the bed, when it was seeded and maybe how it was seeded. If the cover crop is mowed down and tilled in on the first week of May I’ll write MT (meaning mowed and tilled) in the block that represents the first week of May. When the crop is planted I make a vertical line at the beginning of the block and write in the name of the variety. Usually the next note is an H the week that the crop is harvested. If the crop is harvested for multiple weeks there are multiple H’s, one for each week the crop is harvested. When the crop is finished and turned in I make a solid vertical line at the end of the week, or half way through if something else is planted back into that bed that same week. 

There are plenty of other notes that could be made, but even just noting the planting week, harvest weeks and finish of the crop using just two lines, the variety name and H’s gives very valuable information for future planning with a minimum of effort and space.

The maps are also not the only place I keep records so I don’t need to capture every detail in the map. Primarily the maps are keeping records of what was where, and when. I keep separate planting and seeding records, greenhouse records, and harvest records, to name a few, and those hold more of the details, like what the spacing was on a crop, what seeder settings were used, and what the exact planting day was, not just the week it was planted.

I think it’s important to not try to make too many notes on the map as they can confuse more important information. Having said that, I do frequently make other notes when convenient and in places where they won’t interfere with taking future basic notes on the map. With crops where beds are harvested all at once I sometimes note the yield on the bed.

Occasionally I’ll note weeks of hand weeding, germination, flowering, or other things I know that I’ll want to remember and use in planning for years. If I’m trying to track how many times a crop gets hoed I’ll make note of the hoeing events in the the weeks that they happen. If I need more space to make the notes I use the margins and arrows, or earlier blank spaces, but I leave future blocks in case I need to make notes there later. 

Why use a spreadsheet?

The maps can be easily made with graph paper, but by using a spreadsheet, and putting a little work into the formatting, you can make something cleaner which optimizes the space on the sheet. In addition it is easy to create a header row on top with the Monday dates for the year, and a list of the bed numbers on the left side of the sheet. For the bed count on the side I use a simple formula which adds 1 to the number in the cell above. For the Monday date I enter the first Monday date of the year and then use a formula to add 7 to each successive cell which will automatically give the Monday dates for the rest of the year.

If you’re unfamiliar with using formulas in spreadsheets don’t be intimidated, they are relatively easy to learn and greatly improve your ability to use the sheets effectively. When I make my crop plan in the winter I transfer the plan to the spreadsheet maps, using gray background fill to indicate the weeks I expect the crop to be in the bed. I can easily visualize where everything will be, and when it will be there. I essentially do this manually and have not found it worthwhile to write formulas that will automatically generate the maps from the crop plan spreadsheet, although this could be possible. I like to leave a little more flexibility in the representation than formulas would give me and that’s the main reason I haven’t automated this part of the process.

Like all planning, the plans on the maps is not necessarily what will actually happen during the season, but it is an easy way to see if all of the crops planned for will actually fit into the fields at the times they are scheduled for, without conflicting with preceding or successive crops. Additionally, it makes double cropping and planning for cover crops easier as blocks with no gray fill are obviously available for plantings.

Once these crop plan maps are made they are also excellent for passing on the planting location to field crews. I’ve found this especially true for unusual plantings, such as ones where blank beds are to be left for future plantings, or where the sequence of varieties is important. 

Using the maps in the field

Though I use a computer to create the maps, once they are created in the winter I print them out and take all of my notes on the paper copies for the remainder of the season. I make a book using a three ring binder to keep the maps in. Every crop plan map has a blank map behind it. The blank map is where I keep records of what actually happens and I can compare that to the plan. I can also make notes on the plan if I want to make edits to the plan during the season. Once a week I walk through the fields and record everything that happened in the previous week. During the following week it is easy to use the maps as a quick reference of what crops are in the fields and what stage they are at, beds that are ready for planting, and ones that need to be prepared.

For highly diverse plantings this can make scheduling irrigation, tillage, and harvest much easier, especially if you have to pass on the locations of such operations to field crews. The following winter, during crop planning, all of the previous year’s planting weeks and actual weeks to maturity are easy to recall by looking at the maps. I would never give up walking through the fields regularly, but not having to walk out into the field to remember exactly how many beds of lettuce need to be watered, or prepared, or turned in for example, saves a lot of time during the course of the season.

Having a visual record of where, and when crops were in a field makes planning future rotations and planting dates much easier. It’s far easier to edit complex farm planting layouts on paper in the winter than in your head during the season. 

Sample Maps

You can download samples of the spreadsheets I’m talking about above here. There’s also a pdf version of a presentation I do on this same topic included there.