What to know about agile spikes

Learn more about how to implement spikes within the scaled agile framework to address project roadblocks and gain greater insights

Agile is perhaps the most aptly named methodology in software development, giving development teams a clear framework for adaptability, efficiency, and speed. As such, this transformative approach to managing projects has gained widespread adoption; its ability to deliver value to customers while empowering organizations to respond effectively to changing circumstances has made the Agile methodology a clear and worthy successor to the traditional waterfall approach.

Agile software development emphasizes rapid adaptation and value delivery, facilitating quick responses to changing project requirements. Utilizing cross-functional teams in iterative sprints, Agile minimizes disruptions and enables constant software improvements. Particularly well -suited for low-code development, Agile aligns with the philosophy of swift application changes, catering to both seasoned developers and citizen developers. The Agile process follows a cyclical pattern, encompassing planning, design, development, testing, deployment, and review phases, breaking work into user stories that articulate software features from an end user's perspective.


Rooted the values and principles outlined in the Agile Manifesto, Agile prioritizes individuals, working solutions, customer collaboration, and adaptability over rigid processes and extensive documentation. This departure from traditional development approaches is manifested through Agile methodologies like ScrumKanban, and the Scaled Agile Framework (SAFe). Despite the shift from linear to incremental development, challenges and inefficiencies persist, necessitating a team's agile response to address issues promptly, especially when facing looming deadlines. One technique employed by Agile teams to explore uncertainties and gather actionable information is the Agile spike.

Spikes can be useful tools, but it’s worth recognizing that they do not, by themselves, deliver value.

An Agile spike (also called an Agile spike story) is a type of SAFe story—a focused, time-boxed research activity aimed at providing teams with a deeper understanding of a specific problem or task. This makes it an invaluable tool for Agile teams when they encounter technical or functional challenges that need deeper exploration and fast resolution.

Agile spike benefits

It may help to think of Agile spikes as something akin to investigative missions within a development project. They serve several essential purposes:

  • Exploration 
    Agile spikes allow teams to gather reliable information about a project and the hurdles that may stand in its way. 

  • Risk reduction 
    By conducting spikes, teams can mitigate risks early in the development process.

  • Knowledge sharing 
    The knowledge acquired during a spike represents an opportunity for the team to share knowledge, fostering collaboration and collective problem-solving.

  • Informed decision-making 
    After completing a spike, the team is better equipped to make informed decisions regarding how to proceed with the current project and similar projects to come.

  • Reduced waste 
    Teams can avoid investing considerable time and resources in developing features or solutions that may later need to be revised or discarded due to unforeseen issues.

  • More accurate and reliable user stories 
    Through the research and exploration conducted during spikes, teams gain a deeper understanding of user stories and product backlog item (PBI) requirements. 

Agile spikes offer clear benefits and improved exploration to inform effective decision- making within the Agile methodology. Common advantages aside, not all spikes take the same form. There are two distinct types of Agile spikes:

Technical spikes
These spikes are primarily aimed at addressing technical uncertainties or challenges. They involve researching and experimenting with technologies, tools, or architectural decisions. For example, if a team is uncertain about which database technology to use for a specific project, a technical spike could be initiated to evaluate different options and make an informed choice. For issues related to everything from system load to compatibility, implementation, and performance, technical spikes offer invaluable insight.


Functional spikes

Functional spikes focus on functional aspects of the project. These stories are generally used to gain a clearer understanding of the users’ needs or to explore potential solutions to complex functional problems. For instance, if there's ambiguity in how a specific feature should behave from a user's perspective, a functional spike may help clarify the requirements and design. Because user stories often tend to feel vague at the beginning of a project, functional spikes are crucial for better understanding users’ requirements.

The Agile methodology is only agile when it can move forward, which is why spikes must be governed by clear deadlines.

Spikes can be useful tools, but it is worth recognizing that they do not, by themselves, deliver value. Placing too much emphasis on Agile spikes—particularly in situations where standard discussion and experimentation may more easily resolve the issue—can hinder projects from moving forward. For the best possible results, consider the following guidelines for Agile spikes:

Be careful about the timing
By their very nature, spikes represent uncertainty, which makes them a risky prospect to plan for when they are included in the same iteration with their resulting stories. In most cases, spikes should be separated out. That said, if the spike is small, straightforward, and likely to yield quick results, combining both tasks in the same iteration can be efficient.

Hold spikes to the same criteria as standard user stories
As with any other stories, Agile spikes should be placed in the team backlog, their size should be estimated, and they should be allocated to an iteration. While spikes may not produce working code, their output must still be quantifiable and demonstrable. It should provide the information needed to confidently identify and size subsequent stories or determine the best technical approach. The product owner should allow only spikes that meet their acceptance criteria.

Use spikes sparingly
While every user story in Agile development carries at least some uncertainty, it does not necessarily mean that Agile spikes are always the best answer. Spike-like activities are powerful tools for resolving technical and functional issues but may at times be less effective (and more resource-intensive) than simply collaborating as a team to discover a solution. Spikes are most appropriate when teams are faced with high uncertainty or numerous unknowns.

Always time-box Agile spikes
The Agile methodology is only agile only when it can move forward, which is why spikes must be governed by clear deadlines. Once the deadline arrives, teams will need to report whatever findings they have and then determine the next course of action (even if that means following up with another time-boxed spike). Aim for a single, clear question to answer in each spike to maintain focus and effectiveness.

The duration of an Agile spike depends on the needs and capabilities of the team and the requirements of the project. What is most important is to recognize that too deep of a dive into the research can, take time away from other tasks. Not even the most prominent features are worth the wasted resources that go into an over-engineered solution. Instead, a better strategy is to go lean with the time allotted to a spikes—often a single day of research—and to remain flexible enough that additional spikes may be employed if needed.

In Agile teams, anyone can and should initiate a spike if they feel unprepared to tackle a specific task or story and it seems unlikely that standard discussion with the team will provide the solution. Recognizing the need for significantly more information before starting a task is a sign that a spike could be beneficial. This helps prevent the frustration of discovering mid-sprint that a story is more complex than initially anticipated. Embracing uncertainty and building room for it into sprint planning can be a strategic move.

Used correctly, Agile spike stories make it possible to incorporate and plan for intense research sprints within the Agile methodology. Just be aware that with every spike comes a cost of time and effort. Spikes should be used only when the solutions they are likely to present are worth the resources. On the other hand, when used strategically, an Agile spike may be just the thing to get a difficult project moving forward—adaptably, efficiently, and fast.

Used correctly, Agile spike stories make it possible to incorporate and plan for intense research sprints within the Agile methodology.

 Workflow Guide

AI in the enterprise

Loading spinner