{
  "schema_version": "2.0",
  "page_type": "crochet_pattern_article",
  "source_id": null,
  "slug": "white-petal-flower-granny-square",
  "title": "White Petal Flower Granny Square Crochet Pattern",
  "meta_description": "Crochet this White Petal Flower Granny Square in 7 easy rounds — a sweet 5-inch two-color square perfect for baby blankets, spring decor, and gifts",
  "published_at": "2026-07-11",
  "updated_at": "2026-07-11",
  "author": "Ruby",
  "thumbnail_url": "data/images/white-petal-flower-granny-square-hero.webp",
  "meta": {
    "title": "White Petal Flower Granny Square Crochet Pattern",
    "pattern_name": "White Petal Flower Granny Square Crochet Pattern",
    "difficulty": "Easy",
    "time_needed": "1-2 Hours",
    "rating": 4.8,
    "made_count": "1.4K",
    "taxonomy": {
      "category": "Granny Squares",
      "skill_level": "Easy",
      "yarn_weight": "DK",
      "tags": [
        "granny square",
        "flower granny square",
        "free crochet pattern",
        "crochet flower",
        "DK yarn",
        "baby blanket square",
        "two-color crochet",
        "spring crochet",
        "crochet motif",
        "petal flower square"
      ]
    }
  },
  "cards": [
    {
      "order": 1,
      "card_type": "hero",
      "code": "hero",
      "title": "White Petal Flower Granny Square Crochet Pattern",
      "raw_heading": "",
      "quantity": 1,
      "groups": [],
      "rows": [
        {
          "order": 1,
          "row_type": "info",
          "code": "hero-info-1",
          "label": "Confident Beginner",
          "value": "Basic stitches, chain spaces, and easy color changes",
          "raw_text": "Basic stitches, chain spaces, and easy color changes",
          "round_start": null,
          "round_end": null,
          "is_range": false,
          "stitch_count": null,
          "question": null,
          "answer": null,
          "abbr": null,
          "meaning": null
        },
        {
          "order": 2,
          "row_type": "info",
          "code": "hero-info-2",
          "label": "One-Evening Square",
          "value": "About 1-2 hours of relaxing crochet time per square",
          "raw_text": "About 1-2 hours of relaxing crochet time per square",
          "round_start": null,
          "round_end": null,
          "is_range": false,
          "stitch_count": null,
          "question": null,
          "answer": null,
          "abbr": null,
          "meaning": null
        },
        {
          "order": 3,
          "row_type": "info",
          "code": "hero-info-3",
          "label": "Sweet & Versatile",
          "value": "Perfect for baby blankets, spring decor, and handmade gifts",
          "raw_text": "Perfect for baby blankets, spring decor, and handmade gifts",
          "round_start": null,
          "round_end": null,
          "is_range": false,
          "stitch_count": null,
          "question": null,
          "answer": null,
          "abbr": null,
          "meaning": null
        }
      ]
    },
    {
      "order": 2,
      "card_type": "about",
      "code": "about",
      "title": "About",
      "raw_heading": "",
      "quantity": 1,
      "groups": [],
      "rows": [
        {
          "order": 1,
          "row_type": "info",
          "code": "about-info-1",
          "label": "",
          "value": "There's something instantly charming about a granny square with a flower blooming at its center, and this White Petal Flower Granny Square delivers exactly that. Worked over seven rounds in two colors, it pairs a crisp three-dimensional white flower with a soft pink background, all framed by a clean white border, for a look that's delicate without being fussy. The petals have a lovely sculptural quality that gives the impression of a real flower in bloom — perfect for anyone building a baby blanket, adding a feminine touch to spring decor, or simply wanting a motif that feels a little more special than the classic granny square",
          "raw_text": "There's something instantly charming about a granny square with a flower blooming at its center, and this White Petal Flower Granny Square delivers exactly that. Worked over seven rounds in two colors, it pairs a crisp three-dimensional white flower with a soft pink background, all framed by a clean white border, for a look that's delicate without being fussy. The petals have a lovely sculptural quality that gives the impression of a real flower in bloom — perfect for anyone building a baby blanket, adding a feminine touch to spring decor, or simply wanting a motif that feels a little more special than the classic granny square",
          "round_start": null,
          "round_end": null,
          "is_range": false,
          "stitch_count": null,
          "question": null,
          "answer": null,
          "abbr": null,
          "meaning": null
        },
        {
          "order": 3,
          "row_type": "info",
          "code": "about-info-3",
          "label": "",
          "value": "Finished in DK weight yarn, each square measures approximately 5 by 5 inches — a wonderfully practical size for blankets, pillow fronts, and bags. The white petals sit gently raised against the pink background, giving the motif a soft, dimensional feel you'll want to run your fingers over. Make a single square as a sweet accent, or stitch up a whole stack; a blanket of these flower squares makes an unforgettable baby shower gift, and the pink-and-white palette photographs beautifully too",
          "raw_text": "Finished in DK weight yarn, each square measures approximately 5 by 5 inches — a wonderfully practical size for blankets, pillow fronts, and bags. The white petals sit gently raised against the pink background, giving the motif a soft, dimensional feel you'll want to run your fingers over. Make a single square as a sweet accent, or stitch up a whole stack; a blanket of these flower squares makes an unforgettable baby shower gift, and the pink-and-white palette photographs beautifully too",
          "round_start": null,
          "round_end": null,
          "is_range": false,
          "stitch_count": null,
          "question": null,
          "answer": null,
          "abbr": null,
          "meaning": null
        }
      ]
    },
    {
      "order": 4,
      "card_type": "switch_things_up",
      "code": "switch-things-up",
      "title": "Switch Things Up",
      "raw_heading": "",
      "quantity": 1,
      "groups": [],
      "rows": [
        {
          "order": 1,
          "row_type": "info",
          "code": "switch-1",
          "label": "",
          "value": "The two-color construction of this square makes it endlessly customizable, because the flower and background can be swapped independently. The classic pink and white combination was chosen for its sweet, delicate look — perfect for baby items and spring decor. For a different look, try a soft blue background with a yellow flower for a daisy effect, or create a rainbow collection: keep every flower white and rotate the backgrounds through pink, peach, buttery yellow, sage, sky blue, and lilac, then join them into a blanket that reads like a flower field. Warm autumn versions — orange petals on chocolate brown, or lavender petals on cream — are just as lovely. For yarn, any smooth DK works beautifully. Stylecraft Special DK and Paintbox Simply DK are budget-friendly with enormous color ranges, while Scheepjes Colour Crafter gives crisp stitch definition that makes the petals pop. If you'd rather size up, substitute worsted weight — Basic Stitch is a good choice — with a 5 mm hook, and your square will grow to roughly 6 inches with no pattern changes at all, which is handy when you want a blanket to come together faster. To enlarge the square as written, simply keep going after round 7 in the same style: double crochet along each side and work (2dc+ch2+2dc) in every corner space, and each extra round adds close to an inch. Going the other way, sport weight yarn and a 3.25 mm hook produce a daintier square that's gorgeous for garlands, appliqués on cardigans, or mini bunting in a nursery",
          "raw_text": "The two-color construction of this square makes it endlessly customizable, because the flower and background can be swapped independently. The classic pink and white combination was chosen for its sweet, delicate look — perfect for baby items and spring decor. For a different look, try a soft blue background with a yellow flower for a daisy effect, or create a rainbow collection: keep every flower white and rotate the backgrounds through pink, peach, buttery yellow, sage, sky blue, and lilac, then join them into a blanket that reads like a flower field. Warm autumn versions — orange petals on chocolate brown, or lavender petals on cream — are just as lovely. For yarn, any smooth DK works beautifully. Stylecraft Special DK and Paintbox Simply DK are budget-friendly with enormous color ranges, while Scheepjes Colour Crafter gives crisp stitch definition that makes the petals pop. If you'd rather size up, substitute worsted weight — Basic Stitch is a good choice — with a 5 mm hook, and your square will grow to roughly 6 inches with no pattern changes at all, which is handy when you want a blanket to come together faster. To enlarge the square as written, simply keep going after round 7 in the same style: double crochet along each side and work (2dc+ch2+2dc) in every corner space, and each extra round adds close to an inch. Going the other way, sport weight yarn and a 3.25 mm hook produce a daintier square that's gorgeous for garlands, appliqués on cardigans, or mini bunting in a nursery",
          "round_start": null,
          "round_end": null,
          "is_range": false,
          "stitch_count": null,
          "question": null,
          "answer": null,
          "abbr": null,
          "meaning": null
        }
      ]
    },
    {
      "order": 5,
      "card_type": "common_mistakes",
      "code": "common-mistakes",
      "title": "Common Mistakes & How to Fix Them",
      "raw_heading": "",
      "quantity": 1,
      "groups": [],
      "rows": [
        {
          "order": 1,
          "row_type": "mistake",
          "code": "mistake-1",
          "label": "Cinching the starting ring closed too",
          "value": "Keep the center ring relaxed while you work the first round of petals into it — crowding a tight ring distorts the stitches. Once the round is complete, pull the tail firmly to close the hole, then secure it right away. A neat, fully closed center is what makes the white flower look crisp against the pink background",
          "raw_text": "Keep the center ring relaxed while you work the first round of petals into it — crowding a tight ring distorts the stitches. Once the round is complete, pull the tail firmly to close the hole, then secure it right away. A neat, fully closed center is what makes the white flower look crisp against the pink background",
          "round_start": null,
          "round_end": null,
          "is_range": false,
          "stitch_count": null,
          "question": null,
          "answer": null,
          "abbr": null,
          "meaning": null
        },
        {
          "order": 2,
          "row_type": "mistake",
          "code": "mistake-2",
          "label": "Losing petal symmetry by accidentally",
          "value": "The chain spaces in the early rounds are what separate and define each petal, and missing even one throws the whole flower off balance. Count your petals and chain spaces at the end of every flower round before moving on — it takes ten seconds and saves you from frogging three rounds later",
          "raw_text": "The chain spaces in the early rounds are what separate and define each petal, and missing even one throws the whole flower off balance. Count your petals and chain spaces at the end of every flower round before moving on — it takes ten seconds and saves you from frogging three rounds later",
          "round_start": null,
          "round_end": null,
          "is_range": false,
          "stitch_count": null,
          "question": null,
          "answer": null,
          "abbr": null,
          "meaning": null
        },
        {
          "order": 3,
          "row_type": "mistake",
          "code": "mistake-3",
          "label": "Joining the pink background yarn in the",
          "value": "Where you attach the new color determines whether the flower sits centered in the finished square. Fasten off the white completely, then join the background color exactly where the pattern indicates — in this square, round 5 joins in the third loop of an hdc from round 4, and the whole round is worked in the third loop only. Before working the full round, double-check that your placement will line up with the corners to come",
          "raw_text": "Where you attach the new color determines whether the flower sits centered in the finished square. Fasten off the white completely, then join the background color exactly where the pattern indicates — in this square, round 5 joins in the third loop of an hdc from round 4, and the whole round is worked in the third loop only. Before working the full round, double-check that your placement will line up with the corners to come",
          "round_start": null,
          "round_end": null,
          "is_range": false,
          "stitch_count": null,
          "question": null,
          "answer": null,
          "abbr": null,
          "meaning": null
        },
        {
          "order": 4,
          "row_type": "mistake",
          "code": "mistake-4",
          "label": "Placing the corner groups in the wrong",
          "value": "Rounds 5 through 7 transform the round flower into a 5-inch square, and the corners only land correctly if the corner groups go into the designated spaces. Drop a stitch marker into each of the four corner chain spaces as soon as you create them, and move the markers up every round so you never have to guess",
          "raw_text": "Rounds 5 through 7 transform the round flower into a 5-inch square, and the corners only land correctly if the corner groups go into the designated spaces. Drop a stitch marker into each of the four corner chain spaces as soon as you create them, and move the markers up every round so you never have to guess",
          "round_start": null,
          "round_end": null,
          "is_range": false,
          "stitch_count": null,
          "question": null,
          "answer": null,
          "abbr": null,
          "meaning": null
        },
        {
          "order": 5,
          "row_type": "mistake",
          "code": "mistake-5",
          "label": "A square that ruffles at the edges or cups like a bowl",
          "value": "This comes from a tension mismatch between the flower rounds and the background rounds — many crocheters unconsciously tighten up after a color change. If your square ruffles, go down half a hook size for the background rounds; if it cups, go up half a size. Mild waviness usually blocks out, but a real ruffle means the stitch tension needs adjusting",
          "raw_text": "This comes from a tension mismatch between the flower rounds and the background rounds — many crocheters unconsciously tighten up after a color change. If your square ruffles, go down half a hook size for the background rounds; if it cups, go up half a size. Mild waviness usually blocks out, but a real ruffle means the stitch tension needs adjusting",
          "round_start": null,
          "round_end": null,
          "is_range": false,
          "stitch_count": null,
          "question": null,
          "answer": null,
          "abbr": null,
          "meaning": null
        },
        {
          "order": 6,
          "row_type": "mistake",
          "code": "mistake-6",
          "label": "Weaving in the white tails so they peek",
          "value": "a two-color square, ends woven into the wrong color are glaringly visible. Use your darning needle to weave each tail only through the backs of same-colored stitches — white into the flower, pink into the background — changing direction a couple of times so the ends stay put through washing",
          "raw_text": "a two-color square, ends woven into the wrong color are glaringly visible. Use your darning needle to weave each tail only through the backs of same-colored stitches — white into the flower, pink into the background — changing direction a couple of times so the ends stay put through washing",
          "round_start": null,
          "round_end": null,
          "is_range": false,
          "stitch_count": null,
          "question": null,
          "answer": null,
          "abbr": null,
          "meaning": null
        }
      ]
    },
    {
      "order": 6,
      "card_type": "materials",
      "code": "materials",
      "title": "Materials",
      "raw_heading": "",
      "quantity": 1,
      "groups": [
        {
          "order": 1,
          "group_code": "group-1",
          "group_name": "",
          "rows": [
            {
              "order": 1,
              "row_type": "item",
              "code": "mat-1-1",
              "label": "",
              "value": "Yarn of your choice- 2 colors, the sample is made with DK sports",
              "raw_text": "Yarn of your choice- 2 colors, the sample is made with DK sports"
            },
            {
              "order": 2,
              "row_type": "item",
              "code": "mat-1-2",
              "label": "",
              "value": "Crochet hook",
              "raw_text": "Crochet hook"
            },
            {
              "order": 3,
              "row_type": "item",
              "code": "mat-1-3",
              "label": "",
              "value": "Darning Needle",
              "raw_text": "Darning Needle"
            },
            {
              "order": 4,
              "row_type": "item",
              "code": "mat-1-4",
              "label": "",
              "value": "Scissors",
              "raw_text": "Scissors"
            }
          ]
        }
      ],
      "rows": []
    },
    {
      "order": 7,
      "card_type": "abbreviations",
      "code": "abbreviations",
      "title": "Abbreviations",
      "raw_heading": "",
      "quantity": 1,
      "groups": [],
      "rows": [
        {
          "order": 1,
          "row_type": "abbrev",
          "code": "abbrev-blo",
          "label": "blo",
          "value": "back loop only",
          "raw_text": "blo = back loop only",
          "round_start": null,
          "round_end": null,
          "is_range": false,
          "stitch_count": null,
          "question": null,
          "answer": null,
          "abbr": "blo",
          "meaning": "back loop only"
        },
        {
          "order": 2,
          "row_type": "abbrev",
          "code": "abbrev-ch",
          "label": "ch",
          "value": "chain stitch",
          "raw_text": "ch = chain stitch",
          "round_start": null,
          "round_end": null,
          "is_range": false,
          "stitch_count": null,
          "question": null,
          "answer": null,
          "abbr": "ch",
          "meaning": "chain stitch"
        },
        {
          "order": 3,
          "row_type": "abbrev",
          "code": "abbrev-ch-sp",
          "label": "ch-sp",
          "value": "chain space",
          "raw_text": "ch-sp = chain space",
          "round_start": null,
          "round_end": null,
          "is_range": false,
          "stitch_count": null,
          "question": null,
          "answer": null,
          "abbr": "ch-sp",
          "meaning": "chain space"
        },
        {
          "order": 4,
          "row_type": "abbrev",
          "code": "abbrev-dc",
          "label": "dc",
          "value": "double crochet",
          "raw_text": "dc = double crochet",
          "round_start": null,
          "round_end": null,
          "is_range": false,
          "stitch_count": null,
          "question": null,
          "answer": null,
          "abbr": "dc",
          "meaning": "double crochet"
        },
        {
          "order": 5,
          "row_type": "abbrev",
          "code": "abbrev-flo",
          "label": "flo",
          "value": "front loop only",
          "raw_text": "flo = front loop only",
          "round_start": null,
          "round_end": null,
          "is_range": false,
          "stitch_count": null,
          "question": null,
          "answer": null,
          "abbr": "flo",
          "meaning": "front loop only"
        },
        {
          "order": 6,
          "row_type": "abbrev",
          "code": "abbrev-hdc",
          "label": "hdc",
          "value": "half double crochet",
          "raw_text": "hdc = half double crochet",
          "round_start": null,
          "round_end": null,
          "is_range": false,
          "stitch_count": null,
          "question": null,
          "answer": null,
          "abbr": "hdc",
          "meaning": "half double crochet"
        },
        {
          "order": 7,
          "row_type": "abbrev",
          "code": "abbrev-inc",
          "label": "inc",
          "value": "increase",
          "raw_text": "inc = increase",
          "round_start": null,
          "round_end": null,
          "is_range": false,
          "stitch_count": null,
          "question": null,
          "answer": null,
          "abbr": "inc",
          "meaning": "increase"
        },
        {
          "order": 8,
          "row_type": "abbrev",
          "code": "abbrev-rep",
          "label": "rep",
          "value": "repeat",
          "raw_text": "rep = repeat",
          "round_start": null,
          "round_end": null,
          "is_range": false,
          "stitch_count": null,
          "question": null,
          "answer": null,
          "abbr": "rep",
          "meaning": "repeat"
        },
        {
          "order": 9,
          "row_type": "abbrev",
          "code": "abbrev-sc",
          "label": "sc",
          "value": "single crochet",
          "raw_text": "sc = single crochet",
          "round_start": null,
          "round_end": null,
          "is_range": false,
          "stitch_count": null,
          "question": null,
          "answer": null,
          "abbr": "sc",
          "meaning": "single crochet"
        },
        {
          "order": 10,
          "row_type": "abbrev",
          "code": "abbrev-sk",
          "label": "sk",
          "value": "skip",
          "raw_text": "sk = skip",
          "round_start": null,
          "round_end": null,
          "is_range": false,
          "stitch_count": null,
          "question": null,
          "answer": null,
          "abbr": "sk",
          "meaning": "skip"
        },
        {
          "order": 11,
          "row_type": "abbrev",
          "code": "abbrev-st",
          "label": "st",
          "value": "stitch",
          "raw_text": "st = stitch",
          "round_start": null,
          "round_end": null,
          "is_range": false,
          "stitch_count": null,
          "question": null,
          "answer": null,
          "abbr": "st",
          "meaning": "stitch"
        },
        {
          "order": 12,
          "row_type": "abbrev",
          "code": "abbrev-slst",
          "label": "slst",
          "value": "slip stitch for joining for different round.",
          "raw_text": "slst = slip stitch for joining for different round.",
          "round_start": null,
          "round_end": null,
          "is_range": false,
          "stitch_count": null,
          "question": null,
          "answer": null,
          "abbr": "slst",
          "meaning": "slip stitch for joining for different round."
        },
        {
          "order": 13,
          "row_type": "abbrev",
          "code": "abbrev-tr",
          "label": "tr",
          "value": "treble crochet",
          "raw_text": "tr = treble crochet",
          "round_start": null,
          "round_end": null,
          "is_range": false,
          "stitch_count": null,
          "question": null,
          "answer": null,
          "abbr": "tr",
          "meaning": "treble crochet"
        },
        {
          "order": 14,
          "row_type": "abbrev",
          "code": "abbrev-tlo",
          "label": "tlo",
          "value": "third loop only",
          "raw_text": "tlo = third loop only",
          "round_start": null,
          "round_end": null,
          "is_range": false,
          "stitch_count": null,
          "question": null,
          "answer": null,
          "abbr": "tlo",
          "meaning": "third loop only"
        },
        {
          "order": 15,
          "row_type": "abbrev",
          "code": "abbrev-yo",
          "label": "yo",
          "value": "yarn over",
          "raw_text": "yo = yarn over",
          "round_start": null,
          "round_end": null,
          "is_range": false,
          "stitch_count": null,
          "question": null,
          "answer": null,
          "abbr": "yo",
          "meaning": "yarn over"
        }
      ]
    },
    {
      "order": 8,
      "card_type": "part",
      "code": "main-pattern",
      "title": "Main Pattern",
      "raw_heading": "",
      "quantity": 1,
      "groups": [],
      "rows": [
        {
          "order": 1,
          "row_type": "round",
          "code": "main-pattern-round-1",
          "label": "Round 1",
          "value": "Magic ring, ch2 (count as hdc), 7hdc, tighten tail, slst to top of ch2.",
          "raw_text": "Round 1 Magic ring, ch2 (count as hdc), 7hdc, tighten tail, slst to top of ch2.",
          "round_start": 1,
          "round_end": 1,
          "is_range": false,
          "stitch_count": null,
          "question": null,
          "answer": null,
          "abbr": null,
          "meaning": null
        },
        {
          "order": 2,
          "row_type": "instruction",
          "code": "main-pattern-info-1",
          "label": "Steps",
          "value": "Start with a magic ring; Make ch2 as standing st (count as hdc); Make hdc into the ring; 6hdc; Tighten the tail; Slst to top of ch2. Round 1 finished.",
          "raw_text": "Step by step: Start with a magic ring; Make ch2 as standing st (count as hdc); Make hdc into the ring; 6hdc; Tighten the tail; Slst to top of ch2. Round 1 finished.",
          "round_start": null,
          "round_end": null,
          "is_range": false,
          "stitch_count": null,
          "question": null,
          "answer": null,
          "abbr": null,
          "meaning": null
        },
        {
          "order": 3,
          "row_type": "round",
          "code": "main-pattern-round-2",
          "label": "Round 2",
          "value": "(ch1 as standing st+sc+ch3+sc) in same st, [(sc+ch3+sc) in next st] rep 7 times, slst to first sc, fasten off.",
          "raw_text": "Round 2 (ch1 as standing st+sc+ch3+sc) in same st, [(sc+ch3+sc) in next st] rep 7 times, slst to first sc, fasten off.",
          "round_start": 2,
          "round_end": 2,
          "is_range": false,
          "stitch_count": null,
          "question": null,
          "answer": null,
          "abbr": null,
          "meaning": null
        },
        {
          "order": 4,
          "row_type": "instruction",
          "code": "main-pattern-info-2",
          "label": "Steps",
          "value": "Make ch1 as standing st; (sc+ch3+sc) in same st; [(sc+ch3+sc) in next st] repeat 7 times, slst to first sc, fasten off. Round 2 finished.",
          "raw_text": "Step by step: Make ch1 as standing st; (sc+ch3+sc) in same st; [(sc+ch3+sc) in next st] repeat 7 times, slst to first sc, fasten off. Round 2 finished.",
          "round_start": null,
          "round_end": null,
          "is_range": false,
          "stitch_count": null,
          "question": null,
          "answer": null,
          "abbr": null,
          "meaning": null
        },
        {
          "order": 5,
          "row_type": "round",
          "code": "main-pattern-round-3",
          "label": "Round 3",
          "value": "Join new yarn in any ch-sp, (ch1 as standing st+sc+hdc+ch1+hdc+sc) in same ch-sp, [(sc+hdc+ch1+hdc+sc) in next ch-sp] rep 7 times, slst to first sc.",
          "raw_text": "Round 3 Join new yarn in any ch-sp, (ch1 as standing st+sc+hdc+ch1+hdc+sc) in same ch-sp, [(sc+hdc+ch1+hdc+sc) in next ch-sp] rep 7 times, slst to first sc.",
          "round_start": 3,
          "round_end": 3,
          "is_range": false,
          "stitch_count": null,
          "question": null,
          "answer": null,
          "abbr": null,
          "meaning": null
        },
        {
          "order": 6,
          "row_type": "instruction",
          "code": "main-pattern-info-3",
          "label": "Steps",
          "value": "Join new yarn in any ch-sp; (ch1 as standing st+sc+hdc+ch1+hdc+sc) in same ch-sp; [(sc+hdc+ch1+hdc+sc) in next ch-sp] repeat 7 times, slst to first sc. Round 3 finished.",
          "raw_text": "Step by step: Join new yarn in any ch-sp; (ch1 as standing st+sc+hdc+ch1+hdc+sc) in same ch-sp; [(sc+hdc+ch1+hdc+sc) in next ch-sp] repeat 7 times, slst to first sc. Round 3 finished.",
          "round_start": null,
          "round_end": null,
          "is_range": false,
          "stitch_count": null,
          "question": null,
          "answer": null,
          "abbr": null,
          "meaning": null
        },
        {
          "order": 7,
          "row_type": "round",
          "code": "main-pattern-round-4",
          "label": "Round 4",
          "value": "ch2(count as hdc), 2dc, (2tr inc+ 2dc) in next st, hdc, [hdc+2dc, (2tr inc+ 2dc) in next st, hdc] rep 7 times, slst to top of ch2, fasten off.",
          "raw_text": "Round 4 ch2(count as hdc), 2dc, (2tr inc+ 2dc) in next st, hdc, [hdc+2dc, (2tr inc+ 2dc) in next st, hdc] rep 7 times, slst to top of ch2, fasten off.",
          "round_start": 4,
          "round_end": 4,
          "is_range": false,
          "stitch_count": null,
          "question": null,
          "answer": null,
          "abbr": null,
          "meaning": null
        },
        {
          "order": 8,
          "row_type": "instruction",
          "code": "main-pattern-info-4",
          "label": "Steps",
          "value": "Make ch2 as standing st(count as hdc); Make 2dc, (2tr inc+ 2dc) in next st, hdc.",
          "raw_text": "Step by step: Make ch2 as standing st(count as hdc); Make 2dc, (2tr inc+ 2dc) in next st, hdc.",
          "round_start": null,
          "round_end": null,
          "is_range": false,
          "stitch_count": null,
          "question": null,
          "answer": null,
          "abbr": null,
          "meaning": null
        },
        {
          "order": 9,
          "row_type": "instruction",
          "code": "main-pattern-info-5",
          "label": "Steps",
          "value": "[hdc+2dc, (2tr inc+ 2dc) in next st, hdc] repeat 7 times, slst to top of ch2, fasten off. Now we have finished 8 petals.",
          "raw_text": "[hdc+2dc, (2tr inc+ 2dc) in next st, hdc] repeat 7 times, slst to top of ch2, fasten off. Now we have finished 8 petals.",
          "round_start": null,
          "round_end": null,
          "is_range": false,
          "stitch_count": null,
          "question": null,
          "answer": null,
          "abbr": null,
          "meaning": null
        },
        {
          "order": 10,
          "row_type": "round",
          "code": "main-pattern-round-5",
          "label": "Round 5",
          "value": "Tlo, join new color yarn in the third loop of hdc. ch3(count as dc), 2dc, **2dc inc, ch2, 2dc inc, 3dc, sk2, sc, *slst to next st, rep* 2 times, sc, sk2**, [3dc, rep from**to**] rep 7 times, slst to first top of ch3.",
          "raw_text": "Round 5 Tlo, join new color yarn in the third loop of hdc. ch3(count as dc), 2dc, **2dc inc, ch2, 2dc inc, 3dc, sk2, sc, *slst to next st, rep* 2 times, sc, sk2**, [3dc, rep from**to**] rep 7 times, slst to first top of ch3.",
          "round_start": 5,
          "round_end": 5,
          "is_range": false,
          "stitch_count": null,
          "question": null,
          "answer": null,
          "abbr": null,
          "meaning": null
        },
        {
          "order": 11,
          "row_type": "instruction",
          "code": "main-pattern-info-6",
          "label": "Steps",
          "value": "Join new color yarn in the third loop of hdc. Third loop only in this round; Make ch3 as standing st(count as dc); 2dc, 2dc inc, ch2, 2dc inc, 3dc, sk2, sc, *slst to next st, repeat* 2 times, sc, sk2.",
          "raw_text": "Step by step: Join new color yarn in the third loop of hdc. Third loop only in this round; Make ch3 as standing st(count as dc); 2dc, 2dc inc, ch2, 2dc inc, 3dc, sk2, sc, *slst to next st, repeat* 2 times, sc, sk2.",
          "round_start": null,
          "round_end": null,
          "is_range": false,
          "stitch_count": null,
          "question": null,
          "answer": null,
          "abbr": null,
          "meaning": null
        },
        {
          "order": 12,
          "row_type": "instruction",
          "code": "main-pattern-info-7",
          "label": "Steps",
          "value": "[3dc, 2dc inc, ch2, 2dc inc, 3dc, sk2, sc, *slst to next st, repeat* 2 times, sc, sk2] repeat 7 times, slst to first top of ch3. Round 5 finished.",
          "raw_text": "[3dc, 2dc inc, ch2, 2dc inc, 3dc, sk2, sc, *slst to next st, repeat* 2 times, sc, sk2] repeat 7 times, slst to first top of ch3. Round 5 finished.",
          "round_start": null,
          "round_end": null,
          "is_range": false,
          "stitch_count": null,
          "question": null,
          "answer": null,
          "abbr": null,
          "meaning": null
        },
        {
          "order": 13,
          "row_type": "round",
          "code": "main-pattern-round-6",
          "label": "Round 6",
          "value": "ch2(count as hdc), 4hdc, (2hdc+ch2+2hdc) in corner sp, 9hdc, [5hdc, (2hdc+ch2+2hdc) in next corner sp, 9hdc] rep 3 times, slst to top of ch2, fasten off.",
          "raw_text": "Round 6 ch2(count as hdc), 4hdc, (2hdc+ch2+2hdc) in corner sp, 9hdc, [5hdc, (2hdc+ch2+2hdc) in next corner sp, 9hdc] rep 3 times, slst to top of ch2, fasten off.",
          "round_start": 6,
          "round_end": 6,
          "is_range": false,
          "stitch_count": null,
          "question": null,
          "answer": null,
          "abbr": null,
          "meaning": null
        },
        {
          "order": 14,
          "row_type": "instruction",
          "code": "main-pattern-info-8",
          "label": "Steps",
          "value": "Make ch2 as standing st(count as hdc); 4hdc, (2hdc+ch2+2hdc) in corner space, 9hdc.",
          "raw_text": "Step by step: Make ch2 as standing st(count as hdc); 4hdc, (2hdc+ch2+2hdc) in corner space, 9hdc.",
          "round_start": null,
          "round_end": null,
          "is_range": false,
          "stitch_count": null,
          "question": null,
          "answer": null,
          "abbr": null,
          "meaning": null
        },
        {
          "order": 15,
          "row_type": "instruction",
          "code": "main-pattern-info-9",
          "label": "Steps",
          "value": "[5hdc, (2hdc+ch2+2hdc) in next corner space, 9hdc] repeat 3 times, slst to top of ch2, fasten off. Round 6 finished.",
          "raw_text": "[5hdc, (2hdc+ch2+2hdc) in next corner space, 9hdc] repeat 3 times, slst to top of ch2, fasten off. Round 6 finished.",
          "round_start": null,
          "round_end": null,
          "is_range": false,
          "stitch_count": null,
          "question": null,
          "answer": null,
          "abbr": null,
          "meaning": null
        },
        {
          "order": 16,
          "row_type": "round",
          "code": "main-pattern-round-7",
          "label": "Round 7",
          "value": "Join new color yarn in corner sp, ch3(count as dc), (dc+ch2+2dc) in same corner sp, dc in following sts, in each corner sp: 2dc+ch2+2dc, slst to top of ch3, fasten off.",
          "raw_text": "Round 7 Join new color yarn in corner sp, ch3(count as dc), (dc+ch2+2dc) in same corner sp, dc in following sts, in each corner sp: 2dc+ch2+2dc, slst to top of ch3, fasten off.",
          "round_start": 7,
          "round_end": 7,
          "is_range": false,
          "stitch_count": null,
          "question": null,
          "answer": null,
          "abbr": null,
          "meaning": null
        },
        {
          "order": 17,
          "row_type": "instruction",
          "code": "main-pattern-info-10",
          "label": "Steps",
          "value": "Join new color yarn in corner space; Make ch3 as standing st(count as dc); (dc+ch2+2dc) in same corner space, 18dc.",
          "raw_text": "Step by step: Join new color yarn in corner space; Make ch3 as standing st(count as dc); (dc+ch2+2dc) in same corner space, 18dc.",
          "round_start": null,
          "round_end": null,
          "is_range": false,
          "stitch_count": null,
          "question": null,
          "answer": null,
          "abbr": null,
          "meaning": null
        },
        {
          "order": 18,
          "row_type": "instruction",
          "code": "main-pattern-info-11",
          "label": "Steps",
          "value": "[(2dc+ch2+2dc) in next corner space, 18dc] repeat 3 times, slst to top of ch3, fasten off and weave in ends. Now we have finished a spring flower granny square.",
          "raw_text": "[(2dc+ch2+2dc) in next corner space, 18dc] repeat 3 times, slst to top of ch3, fasten off and weave in ends. Now we have finished a spring flower granny square.",
          "round_start": null,
          "round_end": null,
          "is_range": false,
          "stitch_count": null,
          "question": null,
          "answer": null,
          "abbr": null,
          "meaning": null
        }
      ]
    },
    {
      "order": 9,
      "card_type": "important_notes",
      "code": "important-notes",
      "title": "Important Notes",
      "raw_heading": "",
      "quantity": 1,
      "groups": [],
      "rows": [
        {
          "order": 1,
          "row_type": "info",
          "code": "note-1",
          "label": "Note",
          "value": "💡 Gauge: the completed granny square measures approximately 5 inches by 5 inches. The sample uses DK weight yarn, which usually pairs with a 4 mm (US G/6) hook. Work through all 7 rounds and measure: if your square comes out larger, drop down a hook size; smaller, go up one",
          "raw_text": "💡 Gauge: the completed granny square measures approximately 5 inches by 5 inches. The sample uses DK weight yarn, which usually pairs with a 4 mm (US G/6) hook. Work through all 7 rounds and measure: if your square comes out larger, drop down a hook size; smaller, go up one",
          "round_start": null,
          "round_end": null,
          "is_range": false,
          "stitch_count": null,
          "question": null,
          "answer": null,
          "abbr": null,
          "meaning": null
        },
        {
          "order": 2,
          "row_type": "info",
          "code": "note-2",
          "label": "Note",
          "value": "💡 Place a stitch marker in each of the four corner chain spaces the moment the square shape is established, and move them up every round. It makes the final rounds completely mindless — in the best way",
          "raw_text": "💡 Place a stitch marker in each of the four corner chain spaces the moment the square shape is established, and move them up every round. It makes the final rounds completely mindless — in the best way",
          "round_start": null,
          "round_end": null,
          "is_range": false,
          "stitch_count": null,
          "question": null,
          "answer": null,
          "abbr": null,
          "meaning": null
        },
        {
          "order": 3,
          "row_type": "info",
          "code": "note-3",
          "label": "Note",
          "value": "💡 Leave tails of at least 6 inches when you fasten off the white flower and join the pink background. Short tails are miserable to thread onto a darning needle and tend to work loose over time",
          "raw_text": "💡 Leave tails of at least 6 inches when you fasten off the white flower and join the pink background. Short tails are miserable to thread onto a darning needle and tend to work loose over time",
          "round_start": null,
          "round_end": null,
          "is_range": false,
          "stitch_count": null,
          "question": null,
          "answer": null,
          "abbr": null,
          "meaning": null
        },
        {
          "order": 4,
          "row_type": "info",
          "code": "note-4",
          "label": "Note",
          "value": "💡 As you crochet the first background round behind the flower, gently push the petals toward you so they stay on the front of the work. This one habit is what gives the finished square its lovely raised, dimensional look",
          "raw_text": "💡 As you crochet the first background round behind the flower, gently push the petals toward you so they stay on the front of the work. This one habit is what gives the finished square its lovely raised, dimensional look",
          "round_start": null,
          "round_end": null,
          "is_range": false,
          "stitch_count": null,
          "question": null,
          "answer": null,
          "abbr": null,
          "meaning": null
        },
        {
          "order": 5,
          "row_type": "info",
          "code": "note-5",
          "label": "Note",
          "value": "💡 If you're making a batch for a blanket, work up one complete square first as a gauge check, then block every finished square to exactly 5 inches before joining. Even small size differences multiply across a blanket and create wavy seams",
          "raw_text": "💡 If you're making a batch for a blanket, work up one complete square first as a gauge check, then block every finished square to exactly 5 inches before joining. Even small size differences multiply across a blanket and create wavy seams",
          "round_start": null,
          "round_end": null,
          "is_range": false,
          "stitch_count": null,
          "question": null,
          "answer": null,
          "abbr": null,
          "meaning": null
        },
        {
          "order": 6,
          "row_type": "info",
          "code": "note-6",
          "label": "Note",
          "value": "💡 Count your stitches at the end of every one of the 7 rounds. A flower square hides miscounts well in the petal rounds, but they resurface as crooked corners once you start squaring off — and by then the fix means ripping back",
          "raw_text": "💡 Count your stitches at the end of every one of the 7 rounds. A flower square hides miscounts well in the petal rounds, but they resurface as crooked corners once you start squaring off — and by then the fix means ripping back",
          "round_start": null,
          "round_end": null,
          "is_range": false,
          "stitch_count": null,
          "question": null,
          "answer": null,
          "abbr": null,
          "meaning": null
        }
      ]
    },
    {
      "order": 10,
      "card_type": "faq",
      "code": "faq",
      "title": "FAQ",
      "raw_heading": "",
      "quantity": 1,
      "groups": [],
      "rows": [
        {
          "order": 1,
          "row_type": "faq",
          "code": "faq-1",
          "label": "What yarn do I need for the White Petal",
          "value": "The sample is worked in DK/sport weight yarn in two colors — white for the flower and pink for the background. Any smooth DK yarn works well, and since each square uses only small amounts of each color, this pattern is a fantastic stash-buster",
          "raw_text": "The sample is worked in DK/sport weight yarn in two colors — white for the flower and pink for the background. Any smooth DK yarn works well, and since each square uses only small amounts of each color, this pattern is a fantastic stash-buster",
          "round_start": null,
          "round_end": null,
          "is_range": false,
          "stitch_count": null,
          "question": "What yarn do I need for the White Petal Flower Granny Square?",
          "answer": "The sample is worked in DK/sport weight yarn in two colors — white for the flower and pink for the background. Any smooth DK yarn works well, and since each square uses only small amounts of each color, this pattern is a fantastic stash-buster",
          "abbr": null,
          "meaning": null
        },
        {
          "order": 2,
          "row_type": "faq",
          "code": "faq-2",
          "label": "How many of these squares do I need for a baby blanket?",
          "value": "Each square finishes at about 5 x 5 inches, so a 6-by-7 layout gives you a 30 x 35 inch baby blanket from 42 squares. Add a border round or another row of squares if you'd like a little extra length",
          "raw_text": "Each square finishes at about 5 x 5 inches, so a 6-by-7 layout gives you a 30 x 35 inch baby blanket from 42 squares. Add a border round or another row of squares if you'd like a little extra length",
          "round_start": null,
          "round_end": null,
          "is_range": false,
          "stitch_count": null,
          "question": "How many of these squares do I need for a baby blanket?",
          "answer": "Each square finishes at about 5 x 5 inches, so a 6-by-7 layout gives you a 30 x 35 inch baby blanket from 42 squares. Add a border round or another row of squares if you'd like a little extra length",
          "abbr": null,
          "meaning": null
        },
        {
          "order": 3,
          "row_type": "faq",
          "code": "faq-3",
          "label": "Is this pattern okay for beginners?",
          "value": "Yes — it's ideal for a confident beginner. The square uses basic stitches worked over just 7 rounds with a few simple color joins, and the corner rounds are very forgiving. If you've made a classic granny square before, the flower center is a fun, easy next step",
          "raw_text": "Yes — it's ideal for a confident beginner. The square uses basic stitches worked over just 7 rounds with a few simple color joins, and the corner rounds are very forgiving. If you've made a classic granny square before, the flower center is a fun, easy next step",
          "round_start": null,
          "round_end": null,
          "is_range": false,
          "stitch_count": null,
          "question": "Is this pattern okay for beginners?",
          "answer": "Yes — it's ideal for a confident beginner. The square uses basic stitches worked over just 7 rounds with a few simple color joins, and the corner rounds are very forgiving. If you've made a classic granny square before, the flower center is a fun, easy next step",
          "abbr": null,
          "meaning": null
        },
        {
          "order": 4,
          "row_type": "faq",
          "code": "faq-4",
          "label": "What's the best way to join the finished squares?",
          "value": "A whip stitch seam with your darning needle through the back loops gives a flat, nearly invisible join that suits the delicate look of the flowers. Slip-stitch joining works too if you prefer a subtle ridge, and join-as-you-go on the final round saves lots of seaming time on a big blanket",
          "raw_text": "A whip stitch seam with your darning needle through the back loops gives a flat, nearly invisible join that suits the delicate look of the flowers. Slip-stitch joining works too if you prefer a subtle ridge, and join-as-you-go on the final round saves lots of seaming time on a big blanket",
          "round_start": null,
          "round_end": null,
          "is_range": false,
          "stitch_count": null,
          "question": "What's the best way to join the finished squares?",
          "answer": "A whip stitch seam with your darning needle through the back loops gives a flat, nearly invisible join that suits the delicate look of the flowers. Slip-stitch joining works too if you prefer a subtle ridge, and join-as-you-go on the final round saves lots of seaming time on a big blanket",
          "abbr": null,
          "meaning": null
        },
        {
          "order": 5,
          "row_type": "faq",
          "code": "faq-5",
          "label": "Can I make the square bigger or smaller?",
          "value": "Absolutely. Substituting worsted weight yarn with a 5 mm hook grows the square to roughly 6 inches with no pattern changes, while sport weight and a 3.25 mm hook makes a daintier version. You can also keep working rounds after round 7 in the same style — each added round increases the square by close to an inch",
          "raw_text": "Absolutely. Substituting worsted weight yarn with a 5 mm hook grows the square to roughly 6 inches with no pattern changes, while sport weight and a 3.25 mm hook makes a daintier version. You can also keep working rounds after round 7 in the same style — each added round increases the square by close to an inch",
          "round_start": null,
          "round_end": null,
          "is_range": false,
          "stitch_count": null,
          "question": "Can I make the square bigger or smaller?",
          "answer": "Absolutely. Substituting worsted weight yarn with a 5 mm hook grows the square to roughly 6 inches with no pattern changes, while sport weight and a 3.25 mm hook makes a daintier version. You can also keep working rounds after round 7 in the same style — each added round increases the square by close to an inch",
          "abbr": null,
          "meaning": null
        }
      ]
    }
  ],
  "conflicts": [],
  "validation_warnings": [],
  "images": [
    "data/images/white-petal-flower-granny-square-hero.webp",
    "data/images/white-petal-flower-granny-square-step-2.webp",
    "data/images/white-petal-flower-granny-square-step-3.webp",
    "data/images/white-petal-flower-granny-square-step-4.webp"
  ],
  "source_url": null,
  "thumbnail_images": [
    {
      "url": "data/images/white-petal-flower-granny-square-hero.webp",
      "alt": "White Petal Flower Granny Square Crochet Pattern — photo 1",
      "is_featured": true
    }
  ],
  "gallery_images": [
    {
      "url": "data/images/white-petal-flower-granny-square-hero.webp",
      "alt": "White Petal Flower Granny Square Crochet Pattern — photo 1",
      "is_featured": true
    },
    {
      "url": "data/images/white-petal-flower-granny-square-step-2.webp",
      "alt": "White Petal Flower Granny Square Crochet Pattern — photo 2",
      "is_featured": false
    },
    {
      "url": "data/images/white-petal-flower-granny-square-step-3.webp",
      "alt": "White Petal Flower Granny Square Crochet Pattern — photo 3",
      "is_featured": false
    },
    {
      "url": "data/images/white-petal-flower-granny-square-step-4.webp",
      "alt": "White Petal Flower Granny Square Crochet Pattern — photo 4",
      "is_featured": false
    }
  ],
  "_sanitized_holiday_count": 3
}