Project Dependencies Explained: When to Use FS, SS, FF, SF in Gantt Charts

Master the four types of project dependencies (Finish-to-Start, Start-to-Start, Finish-to-Finish, Start-to-Finish) and learn exactly when to use each one in your Gantt charts for successful project management.

15 min read
Project Management
Beginner to Advanced

Get QuickGantt - Free Excel Gantt Chart with Dependency Tracking Template

Download our professional Gantt chart template with built-in dependency tracking (FS, SS, FF, SF) to practice what you learn in this guide.

Download Free Template

What Are Project Dependencies?

Project dependencies are logical relationships between tasks in your project schedule. They define the order in which activities must be completed and help project managers understand which tasks can run in parallel and which must wait for others to finish.

Think of dependencies as the "rules" that govern your project timeline. Without proper dependencies, your Gantt chart becomes just a pretty timeline—with them, it becomes a powerful scheduling engine that can automatically adjust dates and prevent resource conflicts.

Why Dependencies Matter

  • Prevent scheduling conflicts and resource overallocation
  • Use Auto Adjustment feature to recalculate dates when needed (gives you complete control)
  • Spot dependency conflicts and scheduling issues
  • Improve project predictability and stakeholder communication

The Four Types of Dependencies

Project management recognizes four standard types of task dependencies, each serving different scheduling scenarios:

FS - Finish-to-Start

Most Common - Default Type

Task B cannot start until Task A finishes. The traditional sequential dependency. This is the default type when creating dependencies in our template.

Example of Finish-to-Start (FS) dependency in Excel Gantt chart template

Example: FS dependency showing sequential task flow

SS - Start-to-Start

Parallel Work

Task B cannot start until Task A starts. Both tasks can run concurrently after the start trigger.

Example of Start-to-Start (SS) dependency in Excel Gantt chart template

Example: SS dependency with parallel task execution

FF - Finish-to-Finish

Synchronized Completion

Task B cannot finish until Task A finishes.

Example of Finish-to-Finish (FF) dependency in Excel Gantt chart template

Example: FF dependency with synchronized completion

SF - Start-to-Finish

Rare Scenarios

Task B cannot finish until Task A starts. Used in just-in-time or handover scenarios.

Example of Start-to-Finish (SF) dependency in Excel Gantt chart template

Example: SF dependency for handover scenarios

Finish-to-Start (FS) Dependencies

Finish-to-Start (FS) is the most intuitive and commonly used dependency type. It represents the traditional sequential workflow where one task must be completely finished before the next can begin.

When to Use FS Dependencies:

✅ Perfect for FS Dependencies:

  • Sequential Manufacturing: "Assemble Frame" must finish before "Paint Frame" can start
  • Document Approval: "Draft Contract" must be complete before "Legal Review" begins
  • Construction: "Pour Foundation" must finish before "Frame Walls" can start
  • Software Development: "Design Database" must be complete before "Implement Database" begins
  • Event Planning: "Book Venue" must finish before "Send Invitations" can start

How to Create Dependencies in QuickGantt

Creating Dependencies: Step-by-Step

  1. Select the predecessor task: Click the Gantt bar for the task that must happen first
  2. Select the dependent task: Click the Gantt bar for the task that depends on the first
  3. Dependency is created: QuickGantt automatically creates an FS (Finish-to-Start) dependency
  4. Modify if needed: Double-click the dependency line to change the type (SS, FF, SF)
Watch the Process:
Animated demonstration of creating dependencies in QuickGantt - showing the step-by-step process of selecting predecessor task, selecting dependent task, and the automatic creation of dependency links
Click & drag to create dependencies

FS Dependency Example: Website Development

FS Dependency Example: Task must finish before dependent task starts

FS dependency in practice: Sequential task execution

Why FS works here: Designers need complete wireframes to create accurate visual designs. Starting design work with incomplete wireframes leads to rework and scope creep.

Start-to-Start (SS) Dependencies

Start-to-Start (SS) dependencies enable parallel work by allowing Task B to begin as soon as Task A starts. This dependency type is crucial for optimizing project timelines and enabling concurrent activities.

When to Use SS Dependencies:

✅ Perfect for SS Dependencies:

  • Documentation & Development: "Write Code" starts, then "Write Unit Tests" can start simultaneously
  • Training & Implementation: "Begin System Rollout" triggers "Start User Training"
  • Marketing Campaigns: "Launch Ad Campaign" allows "Social Media Promotion" to begin
  • Research Projects: "Start Data Collection" enables "Begin Preliminary Analysis"
  • Construction: "Begin Electrical Work" triggers "Start Plumbing Installation"

SS Dependency Example: Product Launch

SS Dependency Example: Both tasks start simultaneously

SS dependency in practice: Parallel task execution

Why SS works here: Marketing team can begin planning and creating materials as soon as they know development has started, even though the product isn't finished yet.

Finish-to-Finish (FF) Dependencies

Finish-to-Finish (FF) dependencies ensure that Task B cannot finish until Task A finishes. Task B can finish at the same time as Task A or after Task A completes.

When to Use FF Dependencies:

✅ Perfect for FF Dependencies:

  • Quality Assurance: "Testing" cannot finish until "Development" finishes
  • Document Review: "Final Editing" must finish when "Content Writing" finishes
  • Event Coordination: "Setup AV Equipment" finishes when "Setup Catering" finishes
  • Manufacturing: "Quality Control" completes when "Production Line" completes
  • Data Migration: "Data Validation" finishes when "Data Transfer" finishes

FF Dependency Example: Software Release

FF Dependency Example: Task B cannot finish until Task A finishes

FF dependency in practice: Dependent task finish timing

Why FF works here: QA testing can begin partway through development, but cannot finish until development is complete.

Start-to-Finish (SF) Dependencies

Start-to-Finish (SF) is the rarest dependency type. Task B cannot finish until Task A starts. This creates scenarios where one activity must be initiated before another can be concluded.

When to Use SF Dependencies:

✅ Perfect for SF Dependencies:

  • System Transitions: "Old System Operation" cannot finish until "New System Go-Live" starts
  • Shift Handovers: "Night Shift" cannot end until "Day Shift" begins
  • Just-in-Time Delivery: "Warehouse Storage" ends when "Customer Pickup" starts
  • Security Protocols: "Temporary Access" finishes when "Permanent Access" starts
  • Resource Transfers: "Equipment Rental" ends when "Equipment Purchase" begins

SF Dependency Example: System Migration

SF Dependency Example: Task B cannot finish until Task A starts

SF dependency in practice: Handover timing control

Why SF works here: Business continuity requires the old system to keep running until the exact moment the new system goes live.

Resolving Schedule Conflicts

When dependencies create scheduling conflicts, QuickGantt template helps you identify and resolve them. Red dependency lines indicate conflicts that need attention.

Schedule conflict example showing red dependency lines in Gantt chart

Red dependency lines indicate scheduling conflicts that need resolution

How to resolve: Use the Auto-rescheduler feature or manually adjust task dates to eliminate conflicts.

Best Practices for Dependencies

✅ Do's

  • Start with FS dependencies - they're the most common and intuitive
  • Use manual date adjustments when tasks need gaps between dependencies
  • Review dependencies regularly as project scope changes
  • Document the reasoning behind each dependency for future reference

❌ Don'ts

  • Avoid unnecessary dependencies - they constrain scheduling flexibility
  • Don't use SF dependencies unless absolutely necessary
  • Never create circular dependencies (Task A depends on Task B, which depends on Task A)
  • Don't over-constrain your schedule with too many dependencies

Common Mistakes to Avoid

Mistake #1: Using Wrong Dependency Types

Using FS for everything, even when SS or FF would be more appropriate.

Solution: Evaluate each relationship individually and choose the dependency type that best reflects the real-world constraint.

Mistake #2: Over-Constraining the Schedule

Adding dependencies where none exist, reducing schedule flexibility unnecessarily.

Solution: Ask "What would happen if these tasks ran in parallel?" If there's no real conflict, don't add a dependency.

Mistake #3: Not Updating Dependencies

Creating dependencies at project start but never reviewing them as the project evolves.

Solution: Review and update dependencies during regular project reviews, especially when scope changes occur.

Ready to Apply These Dependencies?

Now that you understand when to use FS, SS, FF, and SF dependencies, put your knowledge into practice with our free Excel Gantt chart template. It includes built-in dependency tracking and examples of all four dependency types.

✨ Template Features Shown in This Guide:

  • Visual dependency creation by clicking Gantt bars
  • Automatic conflict detection with red warning lines
  • Auto-rescheduler for resolving dependency conflicts
  • Support for all four dependency types (FS, SS, FF, SF)
Download Free Gantt Chart Template

Quick Reference Summary

When to Use Each Type

  • FS (Most Common): Sequential work, traditional handoffs
  • SS: Parallel work that starts together
  • FF: Work that must finish together
  • SF: Handover scenarios, system transitions

Key Reminders

  • Start with FS, then optimize with other types
  • Use manual scheduling when gaps are needed
  • Avoid over-constraining your schedule
  • Review dependencies regularly
  • Document your reasoning