Switchback Labs

Product Requirements Document

CROP PLANNING & BUDGETING APP

Complete product specification for MVP: user personas, feature requirements, technical architecture, and success metrics.

1. Product Overview

Vision

Empower small to medium-sized farms to plan crop budgets, track expenses, and make informed planting decisions through simple, accessible crop planning tools.

Target Release: MVP - Q2 2026

Success Metrics:

  • 50+ farms actively using the platform within 3 months of launch
  • 80% of users create at least one complete crop budget
  • Users track actuals for at least 60% of their budgeted line items

2. Target Users

Primary Persona: Farm Owner/Operator

  • • Manages 50-500 acres
  • • Grows 2-5 different crop types annually
  • • Currently uses spreadsheets or paper for planning
  • • Needs to understand profitability per field and per crop
  • • Makes fertilizer and chemical purchasing decisions
  • • Basic tech literacy, uses smartphone and computer daily

MVP Scope: Single-user accounts (no team collaboration in MVP)

3. Core Problems We're Solving

  1. Budget Uncertainty: Farmers struggle to predict costs before planting season
  2. Expense Tracking: Hard to know if they're staying on budget without real-time tracking
  3. Profitability Blindness: Unclear which fields/crops are actually profitable
  4. Planning Complexity: Managing multiple crops across multiple fields is mentally taxing

4. MVP Feature Specifications

4.1 User Authentication & Account

  • Email/password sign-up and login
  • Password reset functionality
  • Basic profile (farm name, location, total acreage)

Technical Note: Use industry-standard authentication library (like Auth0, Firebase Auth, or similar) rather than building from scratch. This handles security best practices like password hashing, session management, and token refresh.

4.2 Farm Setup - Fields Management

  • Create/edit/delete fields
  • Field attributes:
    • Field name (e.g., "North 40", "River Bottom")
    • Acreage (decimal support for partial acres)
    • Notes (optional text field)

Data Model: Each field is a distinct entity that can have multiple crop plantings associated with it.

4.3 Crop Planning

Create Crop Planting

  • Associate with a specific field
  • Crop details:
    • Crop type (dropdown: Corn, Soybeans, Wheat, Cotton, Vegetables, Other)
    • Variety/Hybrid name (text field)
    • Planted acres (can be less than field size)
    • Planting date
    • Expected harvest date
    • Expected yield (bushels/acre or tons/acre depending on crop)
    • Expected price per unit

Technical Note: This design allows multiple crops per field. Each "crop planting" is a separate record linked to a field. For example, Field A could have "Spring Wheat (100 acres, March-July)" and "Fall Soybeans (100 acres, August-November)".

4.4 Budget Planning

Budget Categories (per crop planting):

  • Seed
  • Fertilizer
  • Chemical
  • Irrigation
  • Equipment
  • Precision Ag Services
  • Other

Budget Line Items:

  • Category (from list above)
  • Description (e.g., "Starter Fertilizer 10-34-0")
  • Planned cost per acre
  • Total planned cost (calculated: cost/acre × planted acres)
  • Application timing/notes (optional text)

Budget Summary View:

  • Total budgeted cost per crop planting
  • Cost per acre
  • Projected revenue (expected yield × expected price)
  • Projected profit margin

4.5 Actual Expense Tracking

Record Actual Expenses:

  • Link to specific crop planting
  • Category (same as budget categories)
  • Description
  • Actual cost
  • Date incurred
  • Receipt/notes (optional)

Actuals View:

  • Shows budget vs actual by category
  • Visual indicator when over/under budget
  • Running total of actual costs
  • Variance calculations (actual - budget)

4.6 Reporting & Analysis

Budget vs Actual Report (per crop planting):

  • Side-by-side comparison table
  • Category-level breakdown
  • Total variance
  • Profit/loss projection updated with actuals

Farm Summary Dashboard:

  • Total budgeted costs across all crops
  • Total actual costs to date
  • Overall budget variance
  • List of all active crop plantings with quick stats

5. User Flows

Flow 1: New User Setup

  1. Sign up with email/password
  2. Enter farm name and total acreage
  3. Add first field (name + acreage)
  4. Create first crop planting
  5. Add budget line items
  6. View budget summary

Flow 2: Track Expense

  1. From dashboard, select crop planting
  2. Click "Add Actual Expense"
  3. Select category, enter details and cost
  4. Save
  5. View updated budget vs actual

6. Technical Architecture

Frontend

  • Framework: React (recommended for ecosystem and hiring)
  • Responsive Design: Tailwind CSS for mobile-friendly components
  • State Management: React Context API for MVP

Backend

  • Framework: Node.js with Express
  • Database: PostgreSQL (relational data)

Database Schema (simplified)

Users
- id, email, password_hash, farm_name, farm_acreage

Fields
- id, user_id, name, acreage, notes

CropPlantings
- id, field_id, crop_type, variety, planted_acres, 
  planting_date, harvest_date, expected_yield, expected_price

BudgetItems
- id, crop_planting_id, category, description, 
  cost_per_acre, total_cost, notes

ActualExpenses
- id, crop_planting_id, category, description, 
  actual_cost, date_incurred, notes

Hosting

  • Frontend: Vercel or Netlify (free tier available)
  • Backend + Database: Render, Railway, or DigitalOcean ($5-15/month)

7. MVP Scope

✓ What's IN

  • ✓ Single-user accounts
  • ✓ Field management
  • ✓ Crop planning (multiple crops per field)
  • ✓ Budget planning with 7 core categories
  • ✓ Manual actual expense entry
  • ✓ Budget vs actual reporting
  • ✓ Basic dashboard
  • ✓ Responsive web design

⊗ Future Phases

  • ⊗ Multi-user/team collaboration
  • ⊗ Custom fertilizer blending
  • ⊗ Soil test integration
  • ⊗ Crop application templates
  • ⊗ Accounting software integration
  • ⊗ Weather data integration
  • ⊗ Historical trend analysis
  • ⊗ Mobile native apps

8. Success Criteria for MVP Launch

Must Have Before Launch:

  • All core features functional
  • Tested on Chrome, Safari, Firefox
  • Tested on mobile devices (iOS and Android)
  • Basic error handling and user feedback
  • Privacy policy and terms of service

Success Indicators (3 months post-launch):

  • 50+ active users
  • Average of 3+ crop plantings per user
  • 70%+ users return to app at least weekly during growing season
  • < 5% critical bug rate

9. Development Timeline

Phase 1: Foundation (Weeks 1-2)

Database schema, authentication, basic UI framework

Phase 2: Core Features (Weeks 3-5)

Field management, crop planning, budget creation

Phase 3: Tracking & Reporting (Weeks 6-7)

Expense entry, calculations, reporting views

Phase 4: Polish & Testing (Week 8)

Responsive design, bug fixes, user testing

Total Timeline: 8 weeks to functional MVP