{"id":49475,"date":"2025-05-27T01:42:35","date_gmt":"2025-05-27T01:42:35","guid":{"rendered":"https:\/\/www.devopsschool.com\/blog\/?p=49475"},"modified":"2026-02-21T07:28:50","modified_gmt":"2026-02-21T07:28:50","slug":"gitlab-lab-plan-step-by-step-tutorial-gitlab-cloud","status":"publish","type":"post","link":"https:\/\/www.devopsschool.com\/blog\/gitlab-lab-plan-step-by-step-tutorial-gitlab-cloud\/","title":{"rendered":"Gitlab Lab &#8211; Plan &#8211; Step-by-Step Tutorial: GitLab Cloud"},"content":{"rendered":"\n<p>Here\u2019s a <strong>detailed step-by-step tutorial<\/strong> for each option in the <strong>GitLab Plan Section<\/strong> (GitLab Cloud, v18.0) \u2014 tailored for project planning, agile workflows, documentation, and requirements management.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Recommended Planning Flow in GitLab (when starting a project)<\/h2>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Step<\/th><th>Phase<\/th><th>GitLab Feature<\/th><th>Purpose<\/th><\/tr><\/thead><tbody><tr><td>1\ufe0f\u20e3<\/td><td><strong>Define WHAT needs to be built<\/strong><\/td><td>\ud83d\udfe9 <strong>Requirements<\/strong><\/td><td>Capture <em>business, product, or regulatory<\/em> needs. (Ultimate only)<\/td><\/tr><tr><td>2\ufe0f\u20e3<\/td><td><strong>Plan HOW and WHEN to deliver<\/strong><\/td><td>\ud83d\udfe6 <strong>Milestones<\/strong><\/td><td>Group deliverables into <strong>release or delivery goals<\/strong> (like v1.0, Sprint 1)<\/td><\/tr><tr><td>3\ufe0f\u20e3<\/td><td><strong>Timebox into cycles<\/strong><\/td><td>\ud83d\udfe8 <strong>Iterations<\/strong><\/td><td>Sprint-style <strong>cadences<\/strong> within milestones (Premium+)<\/td><\/tr><tr><td>4\ufe0f\u20e3<\/td><td><strong>Break down into actionable work<\/strong><\/td><td>\ud83d\udfe7 <strong>Issues<\/strong><\/td><td>Tasks, bugs, enhancements linked to iterations\/milestones<\/td><\/tr><tr><td>5\ufe0f\u20e3<\/td><td><strong>Visualize &amp; track<\/strong><\/td><td>\ud83d\udfea <strong>Issue Boards<\/strong><\/td><td>Kanban-style tracking, filtered by label, assignee, milestone, iteration<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"883\" height=\"231\" src=\"https:\/\/www.devopsschool.com\/blog\/wp-content\/uploads\/2025\/05\/image-20.png\" alt=\"\" class=\"wp-image-49485\" srcset=\"https:\/\/www.devopsschool.com\/blog\/wp-content\/uploads\/2025\/05\/image-20.png 883w, https:\/\/www.devopsschool.com\/blog\/wp-content\/uploads\/2025\/05\/image-20-300x78.png 300w, https:\/\/www.devopsschool.com\/blog\/wp-content\/uploads\/2025\/05\/image-20-768x201.png 768w\" sizes=\"auto, (max-width: 883px) 100vw, 883px\" \/><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">\ud83e\udded Practical Real-World Sequence<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">\u2705 When to Start with Requirements:<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Product-led<\/strong> development<\/li>\n\n\n\n<li><strong>Regulated domains<\/strong> (finance, healthcare, aerospace)<\/li>\n\n\n\n<li>Want formal validation\/testing of features<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">\u2705 When to Start with Milestones:<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Feature list is informal or evolving<\/li>\n\n\n\n<li>Milestone = release or sprint (without strict formal requirements)<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">\u2705 When to Start with Issues:<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>You&#8217;re working in a fast prototype or MVP mode<\/li>\n\n\n\n<li>Immediate backlog execution without long-term roadmap<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\">\n\n\n\n<h2 class=\"wp-block-heading\">\ud83e\udded Step-by-Step Tutorial: GitLab Cloud \u2013 Plan Section (GitLab 18.0)<\/h2>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\">\n\n\n\n<h3 class=\"wp-block-heading\">\ud83d\udcdd 1. <strong>Issues<\/strong> \u2013 Track Bugs, Tasks, Features<\/h3>\n\n\n\n<h4 class=\"wp-block-heading\">\u2705 Purpose:<\/h4>\n\n\n\n<p>Track unit-level work like bugs, user stories, enhancements.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\">\ud83d\ude80 Steps:<\/h4>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Go to your GitLab project.<\/li>\n\n\n\n<li>Click <code>Plan<\/code> \u2192 <code>Issues<\/code>.<\/li>\n\n\n\n<li>Click <strong>\u201cNew Issue\u201d<\/strong>.<\/li>\n\n\n\n<li>Fill in:\n<ul class=\"wp-block-list\">\n<li><strong>Title<\/strong>: \u201cFix login bug\u201d<\/li>\n\n\n\n<li><strong>Description<\/strong>: Markdown supported. You can add checklist:<br><code>- [ ] Reproduce bug<\/code><br><code>- [ ] Fix session token<\/code><\/li>\n\n\n\n<li>Assign to a team member<\/li>\n\n\n\n<li>Add <strong>Labels<\/strong>, <strong>Milestone<\/strong>, <strong>Due Date<\/strong><\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Optional: use slash commands in comments:\n<ul class=\"wp-block-list\">\n<li><code>\/assign @devuser<\/code><\/li>\n\n\n\n<li><code>\/label ~bug ~frontend<\/code><\/li>\n\n\n\n<li><code>\/estimate 3h<\/code><\/li>\n<\/ul>\n<\/li>\n<\/ol>\n\n\n\n<h4 class=\"wp-block-heading\">\ud83d\udca1 Tips:<\/h4>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Link issues to Merge Requests via keywords in MR:<br><code>Closes #123<\/code><\/li>\n\n\n\n<li>Use time tracking:<br><code>\/spend 2h<\/code>, <code>\/estimate 4h<\/code><\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\">\n\n\n\n<h3 class=\"wp-block-heading\">\ud83e\uddee 2. <strong>Issue Boards<\/strong> \u2013 Agile Kanban Views<\/h3>\n\n\n\n<h4 class=\"wp-block-heading\">\u2705 Purpose:<\/h4>\n\n\n\n<p>Track status (To Do, In Progress, Done) visually using drag-and-drop.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\">\ud83d\ude80 Steps:<\/h4>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Go to <code>Plan<\/code> \u2192 <code>Issue Boards<\/code>.<\/li>\n\n\n\n<li>By default, you\u2019ll see one board. Click <strong>Edit Board<\/strong> or <strong>New Board<\/strong> to create a new one.<\/li>\n\n\n\n<li>Add <strong>Lists<\/strong> based on Labels (e.g.):\n<ul class=\"wp-block-list\">\n<li><code>To Do<\/code> \u2192 <code>~todo<\/code><\/li>\n\n\n\n<li><code>Doing<\/code> \u2192 <code>~doing<\/code><\/li>\n\n\n\n<li><code>Done<\/code> \u2192 <code>~done<\/code><\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Drag issues from one list to another to update status (updates the label automatically).<\/li>\n\n\n\n<li>Use filters for Assignee, Milestone, Iteration.<\/li>\n<\/ol>\n\n\n\n<h4 class=\"wp-block-heading\">\ud83d\udca1 Tips:<\/h4>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Create separate boards for different teams or epics.<\/li>\n\n\n\n<li>Use label automation in <code>.gitlab-ci.yml<\/code> to auto-update status.<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\">\n\n\n\n<h3 class=\"wp-block-heading\">\ud83d\udcc5 3. <strong>Milestones<\/strong> \u2013 Track Progress by Release or Goal<\/h3>\n\n\n\n<h4 class=\"wp-block-heading\">\u2705 Purpose:<\/h4>\n\n\n\n<p>Bundle issues under a goal or time window (e.g., Sprint 5, Release v1.0).<\/p>\n\n\n\n<h4 class=\"wp-block-heading\">\ud83d\ude80 Steps:<\/h4>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Navigate to <code>Plan<\/code> \u2192 <code>Milestones<\/code>.<\/li>\n\n\n\n<li>Click <strong>New Milestone<\/strong>.<\/li>\n\n\n\n<li>Add:\n<ul class=\"wp-block-list\">\n<li><strong>Title<\/strong>: &#8220;Release v1.0&#8221;<\/li>\n\n\n\n<li><strong>Start Date \/ Due Date<\/strong><\/li>\n\n\n\n<li><strong>Description<\/strong><\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>While creating\/editing issues, assign them to this milestone.<\/li>\n\n\n\n<li>Return to Milestones list to view:\n<ul class=\"wp-block-list\">\n<li>Issue completion progress bar<\/li>\n\n\n\n<li>Open vs closed issues<\/li>\n\n\n\n<li>Burnup chart<\/li>\n<\/ul>\n<\/li>\n<\/ol>\n\n\n\n<h4 class=\"wp-block-heading\">\ud83d\udca1 Tips:<\/h4>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Use milestones for product releases or monthly OKRs.<\/li>\n\n\n\n<li>Combine with boards or iterations.<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\">\n\n\n\n<h3 class=\"wp-block-heading\">\ud83d\udd01 4. <strong>Iterations<\/strong> \u2013 Agile Sprint Planning (Premium+)<\/h3>\n\n\n\n<p>NOTE &#8211; Creating a Iteration can be done at GROUP level only. Not at the project Level<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"512\" src=\"https:\/\/www.devopsschool.com\/blog\/wp-content\/uploads\/2025\/05\/image-19-1024x512.png\" alt=\"\" class=\"wp-image-49481\" srcset=\"https:\/\/www.devopsschool.com\/blog\/wp-content\/uploads\/2025\/05\/image-19-1024x512.png 1024w, https:\/\/www.devopsschool.com\/blog\/wp-content\/uploads\/2025\/05\/image-19-300x150.png 300w, https:\/\/www.devopsschool.com\/blog\/wp-content\/uploads\/2025\/05\/image-19-768x384.png 768w, https:\/\/www.devopsschool.com\/blog\/wp-content\/uploads\/2025\/05\/image-19-1536x768.png 1536w, https:\/\/www.devopsschool.com\/blog\/wp-content\/uploads\/2025\/05\/image-19.png 1943w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<h4 class=\"wp-block-heading\">\u2705 Purpose:<\/h4>\n\n\n\n<p>Timeboxed cycles (sprints) for iterative development.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\">\ud83d\ude80 Steps:<\/h4>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p>Requires GitLab <strong>Premium or Ultimate<\/strong><\/p>\n<\/blockquote>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Navigate to <code>Plan<\/code> \u2192 <code>Iterations<\/code>.<\/li>\n\n\n\n<li>Click <strong>New Iteration<\/strong> or <strong>Create Cadence<\/strong> for auto-generated recurring sprints.<\/li>\n\n\n\n<li>Fill in:\n<ul class=\"wp-block-list\">\n<li><strong>Title<\/strong>: \u201cSprint 11\u201d<\/li>\n\n\n\n<li><strong>Start Date \/ End Date<\/strong><\/li>\n\n\n\n<li>Optional: description<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Assign issues to this iteration.<\/li>\n\n\n\n<li>View iteration velocity, completed issues, and upcoming work.<\/li>\n<\/ol>\n\n\n\n<h4 class=\"wp-block-heading\">\ud83d\udca1 Tips:<\/h4>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Use <strong>weight<\/strong> in issues for sprint capacity planning.<\/li>\n\n\n\n<li>Combine with <strong>Issue Boards<\/strong> filtered by iteration.<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\">\n\n\n\n<h3 class=\"wp-block-heading\">\ud83d\udcda 5. <strong>Wiki<\/strong> \u2013 Built-in Documentation System<\/h3>\n\n\n\n<p>SAMPLE  &#8211; <a href=\"https:\/\/gist.github.com\/devops-school\/f8a88b7305f5ace9b3e9aad0d01b9ccd\">https:\/\/gist.github.com\/devops-school\/f8a88b7305f5ace9b3e9aad0d01b9ccd<\/a><\/p>\n\n\n\n<h4 class=\"wp-block-heading\">\u2705 Purpose:<\/h4>\n\n\n\n<p>Document project usage, architecture, onboarding, etc.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\">\ud83d\ude80 Steps:<\/h4>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Navigate to <code>Plan<\/code> \u2192 <code>Wiki<\/code>.<\/li>\n\n\n\n<li>Click <strong>Create your first page<\/strong> (or \u201cNew Page\u201d).<\/li>\n\n\n\n<li>Add:\n<ul class=\"wp-block-list\">\n<li><strong>Title<\/strong>: \u201cGetting Started\u201d<\/li>\n\n\n\n<li><strong>Content<\/strong>: Markdown supported<\/li>\n\n\n\n<li><strong>Commit message<\/strong><\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Save page.<\/li>\n\n\n\n<li>Use <code>[link text](PageTitle)<\/code> for internal wiki linking.<\/li>\n<\/ol>\n\n\n\n<h4 class=\"wp-block-heading\">\ud83d\udca1 Tips:<\/h4>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Use <code>_sidebar.md<\/code> to create a custom navigation panel.<\/li>\n\n\n\n<li>Git-backed: clone\/edit Wiki via Git.<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\">\n\n\n\n<h3 class=\"wp-block-heading\">\ud83d\udccb 6. <strong>Requirements<\/strong> \u2013 Track Formal Product Requirements (Ultimate)<\/h3>\n\n\n\n<h4 class=\"wp-block-heading\">\u2705 Purpose:<\/h4>\n\n\n\n<p>Define and manage structured requirements, linked to validation\/testing.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\">\ud83d\ude80 Steps:<\/h4>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p>Requires <strong>GitLab Ultimate<\/strong><\/p>\n<\/blockquote>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Navigate to <code>Plan<\/code> \u2192 <code>Requirements<\/code>.<\/li>\n\n\n\n<li>Click <strong>New Requirement<\/strong>.<\/li>\n\n\n\n<li>Add:\n<ul class=\"wp-block-list\">\n<li><strong>Title<\/strong>: \u201cUser must log in with 2FA\u201d<\/li>\n\n\n\n<li><strong>Description<\/strong>: Clearly define acceptance criteria<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Link this requirement to:\n<ul class=\"wp-block-list\">\n<li>Issues<\/li>\n\n\n\n<li>Merge Requests<\/li>\n\n\n\n<li>Validation jobs (via CI test results)<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Track test results in GitLab to mark requirement as passed\/failed.<\/li>\n<\/ol>\n\n\n\n<h4 class=\"wp-block-heading\">\ud83d\udca1 Tips:<\/h4>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Best for regulated industries (healthcare, finance).<\/li>\n\n\n\n<li>Combine with CI pipeline and test reports to automate validation.<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\">\n\n\n\n<h2 class=\"wp-block-heading\">\u2705 Summary Table<\/h2>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th><strong>Menu Option<\/strong><\/th><th><strong>Use Case<\/strong><\/th><th><strong>Feature Tier<\/strong><\/th><th><strong>Key Actions<\/strong><\/th><\/tr><\/thead><tbody><tr><td>Issues<\/td><td>Task, bug, feature tracking<\/td><td>Free<\/td><td>Create, assign, label, time tracking<\/td><\/tr><tr><td>Issue Boards<\/td><td>Kanban\/scrum task board<\/td><td>Free<\/td><td>Drag-drop, list by label or milestone<\/td><\/tr><tr><td>Milestones<\/td><td>Group by deadline\/release<\/td><td>Free<\/td><td>Track sprint or release progress<\/td><\/tr><tr><td>Iterations<\/td><td>Agile sprints<\/td><td>Premium+<\/td><td>Timeboxed recurring cadences<\/td><\/tr><tr><td>Wiki<\/td><td>Documentation<\/td><td>Free<\/td><td>Markdown-based, Git-backed<\/td><\/tr><tr><td>Requirements<\/td><td>Product validation<\/td><td>Ultimate<\/td><td>Define, trace, validate system requirements<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\">\n\n\n\n<h2 class=\"wp-block-heading\">Results<\/h2>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"250\" src=\"https:\/\/www.devopsschool.com\/blog\/wp-content\/uploads\/2025\/05\/image-17-1024x250.png\" alt=\"\" class=\"wp-image-49476\" srcset=\"https:\/\/www.devopsschool.com\/blog\/wp-content\/uploads\/2025\/05\/image-17-1024x250.png 1024w, https:\/\/www.devopsschool.com\/blog\/wp-content\/uploads\/2025\/05\/image-17-300x73.png 300w, https:\/\/www.devopsschool.com\/blog\/wp-content\/uploads\/2025\/05\/image-17-768x188.png 768w, https:\/\/www.devopsschool.com\/blog\/wp-content\/uploads\/2025\/05\/image-17.png 1338w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"840\" height=\"285\" src=\"https:\/\/www.devopsschool.com\/blog\/wp-content\/uploads\/2025\/05\/image-18.png\" alt=\"\" class=\"wp-image-49477\" srcset=\"https:\/\/www.devopsschool.com\/blog\/wp-content\/uploads\/2025\/05\/image-18.png 840w, https:\/\/www.devopsschool.com\/blog\/wp-content\/uploads\/2025\/05\/image-18-300x102.png 300w, https:\/\/www.devopsschool.com\/blog\/wp-content\/uploads\/2025\/05\/image-18-768x261.png 768w\" sizes=\"auto, (max-width: 840px) 100vw, 840px\" \/><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">Step-by-Step: How to Create Iterations in GitLab<\/h2>\n\n\n\n<p>Thanks for the screenshot! You&#8217;re on the <strong>Iterations<\/strong> page in GitLab Cloud, but seeing \u201cNo iteration cadences to show\u201d and <strong>no visible &#8220;Create Iteration&#8221; button<\/strong>. This confusion is common \u2014 here&#8217;s the clarification:<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\">\n\n\n\n<h2 class=\"wp-block-heading\">\u2705 How Iterations Work in GitLab (v18.0)<\/h2>\n\n\n\n<p>In GitLab, <strong>you must first create an Iteration Cadence<\/strong> \u2014 only then can you define individual iterations (sprints).<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\">\n\n\n\n<h2 class=\"wp-block-heading\">\ud83e\udded Step-by-Step: How to Create Iterations in GitLab<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">\ud83d\udd10 Prerequisites:<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Iterations require <strong>GitLab Premium or Ultimate<\/strong> (you\u2019re currently on an <strong>Enterprise Trial<\/strong>, so you&#8217;re eligible!)<\/li>\n\n\n\n<li>You must have <strong>Owner or Maintainer<\/strong> permissions in the group\/project.<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\">\n\n\n\n<h3 class=\"wp-block-heading\">\u2705 Step 1: Navigate to Group-Level Iterations (not just project-level)<\/h3>\n\n\n\n<p>Iterations <strong>must be created at the group level<\/strong> (even if visible in a project).<\/p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p>In your URL:<\/p>\n<\/blockquote>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-1\" data-shcb-language-name=\"JavaScript\" data-shcb-language-slug=\"javascript\"><span><code class=\"hljs language-javascript\">https:<span class=\"hljs-comment\">\/\/gitlab.com\/groups\/devopsschoolgroup\/-\/iterations<\/span>\n<\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-1\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">JavaScript<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">javascript<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<p>OR<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Go to: <code>Group &gt; Plan &gt; Iterations<\/code><\/li>\n\n\n\n<li>If you see: \u201cNo iteration cadences to show\u201d<br>\ud83d\udc49 Click <strong>&#8220;New Iteration Cadence&#8221;<\/strong> (usually in upper-right, may be hidden under <code>\u22ee<\/code> menu on some screens).<\/li>\n<\/ol>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\">\n\n\n\n<h3 class=\"wp-block-heading\">\u2705 Step 2: Create Iteration Cadence<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Cadence name<\/strong>: &#8220;Bi-weekly Sprint&#8221;<\/li>\n\n\n\n<li><strong>Start date<\/strong>: (e.g., today)<\/li>\n\n\n\n<li><strong>Duration<\/strong>: 1 or 2 weeks (common in agile)<\/li>\n\n\n\n<li><strong>Automatic scheduling<\/strong>: Optional, enables rolling iterations<\/li>\n\n\n\n<li>Click <strong>Create Cadence<\/strong><\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\">\n\n\n\n<h3 class=\"wp-block-heading\">\u2705 Step 3: Add or Auto-generate Iterations<\/h3>\n\n\n\n<p>Once cadence is created:<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>You can <strong>manually add iterations<\/strong> (with name, start &amp; end dates), <em>or<\/em><\/li>\n\n\n\n<li>Enable <strong>Auto-scheduling<\/strong> in cadence \u2192 GitLab will create recurring sprints.<\/li>\n<\/ol>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\">\n\n\n\n<h3 class=\"wp-block-heading\">\u2705 Step 4: Assign Issues to Iterations<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Go to any issue \u2192 Edit<\/li>\n\n\n\n<li>Find the <strong>Iteration field<\/strong> \u2192 Select from dropdown<\/li>\n<\/ul>\n\n\n\n<p>Now you can use Iterations in:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Boards<\/strong> (filter by iteration)<\/li>\n\n\n\n<li><strong>Issue analytics<\/strong><\/li>\n\n\n\n<li><strong>Burndown\/velocity charts<\/strong> (Premium+)<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\">\n\n\n\n<h2 class=\"wp-block-heading\">\ud83d\udca1Troubleshooting<\/h2>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Symptom<\/th><th>Fix<\/th><\/tr><\/thead><tbody><tr><td>&#8220;No iteration cadences to show&#8221;<\/td><td>You&#8217;re likely in project-level view. Go to <strong>group-level Plan &gt; Iterations<\/strong><\/td><\/tr><tr><td>No &#8220;New Cadence&#8221; button<\/td><td>Ensure you&#8217;re an <strong>Owner\/Maintainer<\/strong> at group level and using Premium+<\/td><\/tr><tr><td>Iteration not visible in issue<\/td><td>Confirm cadence is active and current iteration overlaps with today\u2019s date<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\">\n\n\n\n<h2 class=\"wp-block-heading\">DevOpsSchool Markdown Reference<\/h2>\n\n\n\n<p>SAMPLE  &#8211; <a href=\"https:\/\/gist.github.com\/devops-school\/f8a88b7305f5ace9b3e9aad0d01b9ccd\">https:\/\/gist.github.com\/devops-school\/f8a88b7305f5ace9b3e9aad0d01b9ccd<\/a><\/p>\n\n\n\n<p><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Here\u2019s a detailed step-by-step tutorial for each option in the GitLab Plan Section (GitLab Cloud, v18.0) \u2014 tailored for project planning, agile workflows, documentation, and requirements management&#8230;. <\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"","sticky":false,"template":"","format":"standard","meta":{"_joinchat":[],"footnotes":""},"categories":[2],"tags":[],"class_list":["post-49475","post","type-post","status-publish","format-standard","hentry","category-uncategorised"],"_links":{"self":[{"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/posts\/49475","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/comments?post=49475"}],"version-history":[{"count":7,"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/posts\/49475\/revisions"}],"predecessor-version":[{"id":58987,"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/posts\/49475\/revisions\/58987"}],"wp:attachment":[{"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/media?parent=49475"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/categories?post=49475"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/tags?post=49475"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}