{
  "schema_version": "2.0",
  "page_type": "crochet_pattern_article",
  "source_id": null,
  "slug": "starfish-granny-square-free-crochet-pattern",
  "title": "Starfish Granny Square - Free Crochet Pattern",
  "meta_description": "Crochet this free starfish granny square pattern in 7 rounds with a 3-color gradient. A 5.5-inch ocean-themed block perfect for beach blankets and bags",
  "published_at": "2026-08-21",
  "updated_at": "2026-08-21",
  "author": "Nora",
  "thumbnail_url": "data/images/starfish-granny-square-free-crochet-pattern-hero.webp",
  "meta": {
    "title": "Starfish Granny Square - Free Crochet Pattern",
    "pattern_name": "Starfish Granny Square - Free Crochet Pattern",
    "difficulty": "Confident Beginner",
    "time_needed": "1-2 Hours",
    "rating": 4.8,
    "made_count": "2.3K",
    "taxonomy": {
      "category": "Granny Squares",
      "skill_level": "Confident Beginner",
      "yarn_weight": "Worsted",
      "tags": [
        "granny square",
        "starfish crochet",
        "free crochet pattern",
        "ocean crochet",
        "beach blanket",
        "gradient crochet",
        "coastal decor",
        "crochet square",
        "magic ring",
        "summer crochet",
        "nautical crochet",
        "afghan block"
      ]
    }
  },
  "cards": [
    {
      "order": 1,
      "card_type": "hero",
      "code": "hero",
      "title": "Starfish Granny Square - Free Crochet Pattern",
      "raw_heading": "",
      "quantity": 1,
      "groups": [],
      "rows": [
        {
          "order": 1,
          "row_type": "info",
          "code": "hero-info-1",
          "label": "Confident Beginner",
          "value": "Magic ring, back-loop and front-loop work, tall-stitch clusters, and simple color changes between rounds",
          "raw_text": "Magic ring, back-loop and front-loop work, tall-stitch clusters, and simple color changes between rounds",
          "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": "Evening Project",
          "value": "Just 7 rounds, about 1-2 hours of relaxed crafting per square",
          "raw_text": "Just 7 rounds, about 1-2 hours of relaxed crafting 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": "Coastal Charm",
          "value": "A seashore-inspired block for beach blankets, totes, and ocean-lover gifts",
          "raw_text": "A seashore-inspired block for beach blankets, totes, and ocean-lover 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": "This Starfish Granny Square turns a classic crochet block into a little piece of the seashore. Over seven rounds, a five-armed starfish blooms from a magic ring at the center, and the outer rounds gently square it off so it slots neatly into any granny-square project. What makes it special is the three-color gradient: the starfish shifts from a lighter shade to a deeper one before the background color frames it. It's perfect for crocheters who love coastal decor, are planning a beach blanket, or are building a themed square collection",
          "raw_text": "This Starfish Granny Square turns a classic crochet block into a little piece of the seashore. Over seven rounds, a five-armed starfish blooms from a magic ring at the center, and the outer rounds gently square it off so it slots neatly into any granny-square project. What makes it special is the three-color gradient: the starfish shifts from a lighter shade to a deeper one before the background color frames it. It's perfect for crocheters who love coastal decor, are planning a beach blanket, or are building a themed square collection",
          "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": "about-info-2",
          "label": "",
          "value": "You'll work a magic loop to start, then build each starfish arm by chaining out and working back down the chain in back loops only, followed by a front-loop round and a third-loop round of graduated tall-stitch clusters, changing color between rounds to create the fade. Squaring off the star uses graduated stitch heights with ch-2 corners, finished with a neat single crochet border. The pattern uses quite a variety of different stitches, so I'd call it a confident-beginner to early-intermediate project: nothing is hard on its own, but keeping the five arms evenly spaced and the gradient tidy takes a little attention. Expect roughly one to two hours per square once you've made your first",
          "raw_text": "You'll work a magic loop to start, then build each starfish arm by chaining out and working back down the chain in back loops only, followed by a front-loop round and a third-loop round of graduated tall-stitch clusters, changing color between rounds to create the fade. Squaring off the star uses graduated stitch heights with ch-2 corners, finished with a neat single crochet border. The pattern uses quite a variety of different stitches, so I'd call it a confident-beginner to early-intermediate project: nothing is hard on its own, but keeping the five arms evenly spaced and the gradient tidy takes a little attention. Expect roughly one to two hours per square once you've made your first",
          "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": "The finished square measures approximately 5.51 x 5.51 inches (14 cm), with a pleasingly raised starfish that stands out from its background. The fabric is soft but structured, so the square holds its shape beautifully in blankets, cushion covers, tote bag panels, or even framed as wall art for a beach house. A set of nine makes a gorgeous baby blanket, while a single square becomes a lovely coaster or mug rug. They make heartfelt handmade gifts for anyone who dreams of the ocean",
          "raw_text": "The finished square measures approximately 5.51 x 5.51 inches (14 cm), with a pleasingly raised starfish that stands out from its background. The fabric is soft but structured, so the square holds its shape beautifully in blankets, cushion covers, tote bag panels, or even framed as wall art for a beach house. A set of nine makes a gorgeous baby blanket, while a single square becomes a lovely coaster or mug rug. They make heartfelt handmade gifts for anyone who dreams of the ocean",
          "round_start": null,
          "round_end": null,
          "is_range": false,
          "stitch_count": null,
          "question": null,
          "answer": null,
          "abbr": null,
          "meaning": null
        }
      ]
    },
    {
      "order": 3,
      "card_type": "why_love",
      "code": "why-love",
      "title": "Why You'll Love This Pattern",
      "raw_heading": "",
      "quantity": 1,
      "groups": [],
      "rows": [
        {
          "order": 1,
          "row_type": "info",
          "code": "why-love-1",
          "label": "",
          "value": "I'll be honest, I have a weakness for granny squares with a picture hiding inside them, and this starfish is one of my favorites I've ever made. The magic ring start gives you a perfectly closed center, and then watching the five arms appear round by round is genuinely exciting. You go from a small circle to a recognizable starfish in just a few rounds, and every time I finish the arm round I hold it up and grin. The gradient is what really sold me. By changing color on each starfish round, you get that sun-faded, real-seashell look without any fancy technique, just simple color changes and a few extra ends to weave in. I also love how the squaring-off rounds work: the corner chain spaces settle neatly between the arms, so the star never looks squished or lopsided the way some shaped squares do. And because it's only seven rounds, I can finish one during an evening show. Lay a few side by side and you have an instant ocean floor. It's relaxing, satisfying, and the results look far more complicated than they are",
          "raw_text": "I'll be honest, I have a weakness for granny squares with a picture hiding inside them, and this starfish is one of my favorites I've ever made. The magic ring start gives you a perfectly closed center, and then watching the five arms appear round by round is genuinely exciting. You go from a small circle to a recognizable starfish in just a few rounds, and every time I finish the arm round I hold it up and grin. The gradient is what really sold me. By changing color on each starfish round, you get that sun-faded, real-seashell look without any fancy technique, just simple color changes and a few extra ends to weave in. I also love how the squaring-off rounds work: the corner chain spaces settle neatly between the arms, so the star never looks squished or lopsided the way some shaped squares do. And because it's only seven rounds, I can finish one during an evening show. Lay a few side by side and you have an instant ocean floor. It's relaxing, satisfying, and the results look far more complicated than they are",
          "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": "A loose or gaping magic ring at the center of the starfish",
          "value": "After completing round 1, pull the tail firmly until the hole closes completely, then work round 2 before weaving the tail in. Weave it back and forth through the first round stitches at least twice so the ring can't reopen after washing. If your yarn is slippery, wrap the ring twice around your fingers for a double-strand center that grips better",
          "raw_text": "After completing round 1, pull the tail firmly until the hole closes completely, then work round 2 before weaving the tail in. Weave it back and forth through the first round stitches at least twice so the ring can't reopen after washing. If your yarn is slippery, wrap the ring twice around your fingers for a double-strand center that grips better",
          "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": "Starfish arms that come out uneven or lopsided",
          "value": "This almost always comes from miscounting stitches or chain spaces in the first three rounds, where every stitch matters. Count at the end of each round before moving on, and place a stitch marker at the tip of each of the five arms as soon as they form. When you work the squaring-off rounds, the markers also show you exactly where the corners should sit between the arms",
          "raw_text": "This almost always comes from miscounting stitches or chain spaces in the first three rounds, where every stitch matters. Count at the end of each round before moving on, and place a stitch marker at the tip of each of the five arms as soon as they form. When you work the squaring-off rounds, the markers also show you exactly where the corners should sit between the arms",
          "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": "Messy, bulky color changes that spoil the gradient",
          "value": "Change colors by completing the very last yarn-over of the final stitch in the round with the new color, or fasten off cleanly and rejoin with a standing double crochet in the next round. Never carry long floats of the old color behind the work; on a flat square they show through and pull the fabric. Leave 6-inch tails and weave each one in along the same-colored round so it disappears",
          "raw_text": "Change colors by completing the very last yarn-over of the final stitch in the round with the new color, or fasten off cleanly and rejoin with a standing double crochet in the next round. Never carry long floats of the old color behind the work; on a flat square they show through and pull the fabric. Leave 6-inch tails and weave each one in along the same-colored round so it disappears",
          "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": "The square pulling in and distorting the starfish",
          "value": "If the corner chain spaces on the outer rounds are worked too tightly, the square cinches and the star looks squashed. Keep your corner chains slightly loose, and if you're a tight crocheter, go up half a hook size for the last two rounds only. A light wet block at the end will also coax the edges straight without flattening the raised starfish",
          "raw_text": "If the corner chain spaces on the outer rounds are worked too tightly, the square cinches and the star looks squashed. Keep your corner chains slightly loose, and if you're a tight crocheter, go up half a hook size for the last two rounds only. A light wet block at the end will also coax the edges straight without flattening the raised starfish",
          "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": "Skipping blocking and ending up with curling arms",
          "value": "The clusters that form the starfish arms are denser than the background, so the square often cups a little straight off the hook. Pin it out to 5.5 x 5.5 inches on a foam mat, mist with water, and let it dry fully. For acrylic, a gentle steam held an inch above the fabric relaxes it without killing the texture",
          "raw_text": "The clusters that form the starfish arms are denser than the background, so the square often cups a little straight off the hook. Pin it out to 5.5 x 5.5 inches on a foam mat, mist with water, and let it dry fully. For acrylic, a gentle steam held an inch above the fabric relaxes it without killing the texture",
          "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- 3 color",
              "raw_text": "Yarn of your choice- 3 color"
            },
            {
              "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-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": 2,
          "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": 3,
          "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": 4,
          "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": 5,
          "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": 6,
          "row_type": "abbrev",
          "code": "abbrev-dtr",
          "label": "dtr",
          "value": "double treble crochet",
          "raw_text": "dtr = double treble crochet",
          "round_start": null,
          "round_end": null,
          "is_range": false,
          "stitch_count": null,
          "question": null,
          "answer": null,
          "abbr": "dtr",
          "meaning": "double treble crochet"
        },
        {
          "order": 7,
          "row_type": "abbrev",
          "code": "abbrev-trtr",
          "label": "trtr",
          "value": "triple treble crochet",
          "raw_text": "trtr = triple treble crochet",
          "round_start": null,
          "round_end": null,
          "is_range": false,
          "stitch_count": null,
          "question": null,
          "answer": null,
          "abbr": "trtr",
          "meaning": "triple treble crochet"
        },
        {
          "order": 8,
          "row_type": "abbrev",
          "code": "abbrev-sl-st",
          "label": "Sl St",
          "value": "slip stitch for joining to different round",
          "raw_text": "Sl St = slip stitch for joining to different round",
          "round_start": null,
          "round_end": null,
          "is_range": false,
          "stitch_count": null,
          "question": null,
          "answer": null,
          "abbr": "Sl St",
          "meaning": "slip stitch for joining to different round"
        },
        {
          "order": 9,
          "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": 10,
          "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": 11,
          "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": 12,
          "row_type": "abbrev",
          "code": "abbrev-tog",
          "label": "tog",
          "value": "together",
          "raw_text": "tog = together",
          "round_start": null,
          "round_end": null,
          "is_range": false,
          "stitch_count": null,
          "question": null,
          "answer": null,
          "abbr": "tog",
          "meaning": "together"
        },
        {
          "order": 13,
          "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": 14,
          "row_type": "abbrev",
          "code": "abbrev-bl",
          "label": "BL",
          "value": "back loop",
          "raw_text": "BL = back loop",
          "round_start": null,
          "round_end": null,
          "is_range": false,
          "stitch_count": null,
          "question": null,
          "answer": null,
          "abbr": "BL",
          "meaning": "back loop"
        },
        {
          "order": 15,
          "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": 16,
          "row_type": "abbrev",
          "code": "abbrev-fl",
          "label": "FL",
          "value": "front loop",
          "raw_text": "FL = front loop",
          "round_start": null,
          "round_end": null,
          "is_range": false,
          "stitch_count": null,
          "question": null,
          "answer": null,
          "abbr": "FL",
          "meaning": "front loop"
        },
        {
          "order": 17,
          "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": 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 loop, ch3(count as dc)+14dc in the loop, sl st to the top of the first ch3.",
          "raw_text": "Round 1 Magic loop, ch3(count as dc)+14dc in the loop, sl st to the top of the first ch3.",
          "round_start": 1,
          "round_end": 1,
          "is_range": false,
          "stitch_count": null,
          "question": null,
          "answer": null,
          "abbr": null,
          "meaning": null
        },
        {
          "order": 2,
          "row_type": "info",
          "code": "main-pattern-info-1",
          "label": "Info",
          "value": "Step by step: Start with a magic loop. ch3 as a standing st (count as dc). dc in the loop; 13dc in the loop; Pull the tail tightly. sl st to the top of the first ch3, round 1 finished.",
          "raw_text": "Step by step: Start with a magic loop. ch3 as a standing st (count as dc). dc in the loop; 13dc in the loop; Pull the tail tightly. sl st to the top of the first ch3, 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": "[ch10, BLO, from 9th ch to 1st ch: 2sc, 4hdc, 3dc, sk2, sl st to the next st] repeat 5 times, fasten off.",
          "raw_text": "Round 2 [ch10, BLO, from 9th ch to 1st ch: 2sc, 4hdc, 3dc, sk2, sl st to the next st] repeat 5 times, 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": "info",
          "code": "main-pattern-info-2",
          "label": "Info",
          "value": "Step by step: ch10. BLO, start from the BL of the 9th ch to the BL of the 1st ch, make 2sc, 4hdc, 3dc, sk2, sl st to the next st. [ch10, BLO from 9th ch to 1st ch: 2sc, 4hdc, 3dc, sk2, sl st to the next st] repeat 4 times, fasten off. Round 2 finished.",
          "raw_text": "Step by step: ch10. BLO, start from the BL of the 9th ch to the BL of the 1st ch, make 2sc, 4hdc, 3dc, sk2, sl st to the next st. [ch10, BLO from 9th ch to 1st ch: 2sc, 4hdc, 3dc, sk2, sl st to the next st] repeat 4 times, 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": "New yarn in FL of the 2nd ch of a ch-10 group, ch3(count as dc), (FLO: dc, 4hdc, 2sc), sc in the 10th ch, 2sc, 4hdc, 2dc, dc2tog, [(FLO: 2dc, 4hdc, 2sc), sc in the 10th ch, 2sc, 4hdc, 2dc, dc3tog] repeat 4 times, sl st to the top of the first ch3, fasten off.",
          "raw_text": "Round 3 New yarn in FL of the 2nd ch of a ch-10 group, ch3(count as dc), (FLO: dc, 4hdc, 2sc), sc in the 10th ch, 2sc, 4hdc, 2dc, dc2tog, [(FLO: 2dc, 4hdc, 2sc), sc in the 10th ch, 2sc, 4hdc, 2dc, dc3tog] repeat 4 times, sl st to the top of the first ch3, fasten off.",
          "round_start": 3,
          "round_end": 3,
          "is_range": false,
          "stitch_count": null,
          "question": null,
          "answer": null,
          "abbr": null,
          "meaning": null
        },
        {
          "order": 6,
          "row_type": "info",
          "code": "main-pattern-info-13",
          "label": "Info",
          "value": "Step by step: Add new yarn in FL of the 2nd ch of a ch-10 group. ch3 as a standing st (count as dc). dc in the next FL, hdc in the next 4 FL, sc in the next 2 FL, sc in the 10th ch, sc in the next 2 sts, 4hdc, 2dc, dc3tog. [(2dc, 4hdc, 2sc in the next 8 FL, sc in the 10th ch, (2sc, 4hdc, 2dc in the next 8 sts), dc3tog across the following 2 sts and FL of the next 1st ch] repeat 4 times, sl st to the top of the first ch3, fasten off. Round 3 finished.",
          "raw_text": "Step by step: Add new yarn in FL of the 2nd ch of a ch-10 group. ch3 as a standing st (count as dc). dc in the next FL, hdc in the next 4 FL, sc in the next 2 FL, sc in the 10th ch, sc in the next 2 sts, 4hdc, 2dc, dc3tog. [(2dc, 4hdc, 2sc in the next 8 FL, sc in the 10th ch, (2sc, 4hdc, 2dc in the next 8 sts), dc3tog across the following 2 sts and FL of the next 1st ch] repeat 4 times, sl st to the top of the first ch3, fasten off. 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": "Third loop(tl) only, [sl st, sc, hdc, dc, tr2tog, dtr2tog, trtr2tog(sk 1 tl between), dtr2tog, tr2tog, dc, hdc, sc] repeat 5 times, sl st to the first sl st.",
          "raw_text": "Round 4 Third loop(tl) only, [sl st, sc, hdc, dc, tr2tog, dtr2tog, trtr2tog(sk 1 tl between), dtr2tog, tr2tog, dc, hdc, sc] repeat 5 times, sl st to the first sl st.",
          "round_start": 4,
          "round_end": 4,
          "is_range": false,
          "stitch_count": null,
          "question": null,
          "answer": null,
          "abbr": null,
          "meaning": null
        },
        {
          "order": 8,
          "row_type": "info",
          "code": "main-pattern-info-5",
          "label": "Info",
          "value": "Step by step: Third loop(tl) only for this round. Work sl st in this tl. sc, hdc, dc, tr2tog, dtr2tog, trtr2tog(skip 1 tl between), dtr2tog, tr2tog, dc, hdc, sc. [sl st, sc, hdc, dc, tr2tog, dtr2tog, trtr2tog(skip 1 tl between), dtr2tog, tr2tog, dc, hdc, sc] repeat 4 times, sl st to the first sl st. Round 4 finished.",
          "raw_text": "Step by step: Third loop(tl) only for this round. Work sl st in this tl. sc, hdc, dc, tr2tog, dtr2tog, trtr2tog(skip 1 tl between), dtr2tog, tr2tog, dc, hdc, sc. [sl st, sc, hdc, dc, tr2tog, dtr2tog, trtr2tog(skip 1 tl between), dtr2tog, tr2tog, dc, hdc, sc] repeat 4 times, sl st to the first sl st. Round 4 finished.",
          "round_start": null,
          "round_end": null,
          "is_range": false,
          "stitch_count": null,
          "question": null,
          "answer": null,
          "abbr": null,
          "meaning": null
        },
        {
          "order": 9,
          "row_type": "round",
          "code": "main-pattern-round-5",
          "label": "Round 5",
          "value": "ch1+sc, sc, hdc, hdc inc, dc, 2 dc inc, dc, hdc inc, hdc, 2sc, [2sc, hdc, hdc inc, dc, 2 dc inc, dc, hdc inc, hdc, 2sc] repeat 4 times, sl st to the first sc.",
          "raw_text": "Round 5 ch1+sc, sc, hdc, hdc inc, dc, 2 dc inc, dc, hdc inc, hdc, 2sc, [2sc, hdc, hdc inc, dc, 2 dc inc, dc, hdc inc, hdc, 2sc] repeat 4 times, sl st to the first sc.",
          "round_start": 5,
          "round_end": 5,
          "is_range": false,
          "stitch_count": null,
          "question": null,
          "answer": null,
          "abbr": null,
          "meaning": null
        },
        {
          "order": 10,
          "row_type": "info",
          "code": "main-pattern-info-7",
          "label": "Info",
          "value": "Step by step: ch1 as a standing st, sc in the same st, sc in the next st, hdc, hdc inc, dc, 2 dc inc, dc, hdc inc, hdc, 2sc. [2sc, hdc, hdc inc, dc, 2 dc inc, dc, hdc inc, hdc, 2sc] repeat 4 times, sl st to the first sc. Round 5 finished.",
          "raw_text": "Step by step: ch1 as a standing st, sc in the same st, sc in the next st, hdc, hdc inc, dc, 2 dc inc, dc, hdc inc, hdc, 2sc. [2sc, hdc, hdc inc, dc, 2 dc inc, dc, hdc inc, hdc, 2sc] repeat 4 times, sl st to the first sc. Round 5 finished.",
          "round_start": null,
          "round_end": null,
          "is_range": false,
          "stitch_count": null,
          "question": null,
          "answer": null,
          "abbr": null,
          "meaning": null
        },
        {
          "order": 11,
          "row_type": "round",
          "code": "main-pattern-round-6",
          "label": "Round 6",
          "value": "ch2(count as hdc), 2hdc, 5sc, 3hdc, 2dc, 2tr, dtr+ch2+dtr, 2tr, 2dc, [3hdc, 5sc, 3hdc, 2dc, 2tr, dtr+ch2+dtr, str, 2dc] repeat 3 times, sl st to the top of the first ch2.",
          "raw_text": "Round 6 ch2(count as hdc), 2hdc, 5sc, 3hdc, 2dc, 2tr, dtr+ch2+dtr, 2tr, 2dc, [3hdc, 5sc, 3hdc, 2dc, 2tr, dtr+ch2+dtr, str, 2dc] repeat 3 times, sl st to the top of the first ch2.",
          "round_start": 6,
          "round_end": 6,
          "is_range": false,
          "stitch_count": null,
          "question": null,
          "answer": null,
          "abbr": null,
          "meaning": null
        },
        {
          "order": 12,
          "row_type": "info",
          "code": "main-pattern-info-9",
          "label": "Info",
          "value": "Step by step: ch2 as a standing st(count as hdc). 2hdc, 5sc, 3hdc, 2dc, 2tr, dtr+ch2+dtr, 2tr, 2dc. [3hdc, 5sc, 3hdc, 2dc, 2tr, dtr+ch2+dtr, str, 2dc] repeat 3 times, sl st to the top of the first ch2. Round 6 finished.",
          "raw_text": "Step by step: ch2 as a standing st(count as hdc). 2hdc, 5sc, 3hdc, 2dc, 2tr, dtr+ch2+dtr, 2tr, 2dc. [3hdc, 5sc, 3hdc, 2dc, 2tr, dtr+ch2+dtr, str, 2dc] repeat 3 times, sl st to the top of the first ch2. Round 6 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-7",
          "label": "Round 7",
          "value": "ch1+sc, 14sc, sc+ch2+sc in corner, 6sc, [15sc, sc+ch2+sc in next corner, 6sc] repeat 3 times, sl st to the first sc, fasten off.",
          "raw_text": "Round 7 ch1+sc, 14sc, sc+ch2+sc in corner, 6sc, [15sc, sc+ch2+sc in next corner, 6sc] repeat 3 times, sl st to the first sc, fasten off.",
          "round_start": 7,
          "round_end": 7,
          "is_range": false,
          "stitch_count": null,
          "question": null,
          "answer": null,
          "abbr": null,
          "meaning": null
        },
        {
          "order": 14,
          "row_type": "info",
          "code": "main-pattern-info-11",
          "label": "Info",
          "value": "Step by step: ch1 as a standing st. sc in the same st, 14sc, sc+ch2+sc in the next corner space, 6sc. [15sc, sc+ch2+sc in the next corner space, 6sc] repeat 3 times, sl st to the first sc, fasten off. Round 7 finished.",
          "raw_text": "Step by step: ch1 as a standing st. sc in the same st, 14sc, sc+ch2+sc in the next corner space, 6sc. [15sc, sc+ch2+sc in the next corner space, 6sc] repeat 3 times, sl st to the first sc, fasten off. Round 7 finished.",
          "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 starfish granny square measures approximately 5.51 x 5.51 inches. The designer doesn't specify a hook size, so start with the hook recommended on your yarn label and make a test square. If it comes out smaller, go up half a hook size; if it's larger, drop down half a size. The exact size only matters if you're joining many squares together",
          "raw_text": "💡 Gauge: the completed starfish granny square measures approximately 5.51 x 5.51 inches. The designer doesn't specify a hook size, so start with the hook recommended on your yarn label and make a test square. If it comes out smaller, go up half a hook size; if it's larger, drop down half a size. The exact size only matters if you're joining many squares together",
          "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-7",
          "label": "Note",
          "value": "💡 Color combination suggestion from the designer: the sample starfish flows from sunny yellow at the center through warm orange to the tips, contrasted against an ocean blue background. Try coral pink starfish fading to deep rose on turquoise backgrounds for tropical reef charm, or go elegant with purple starfish gradients on seafoam green for mystical ocean depths. The gradient technique works beautifully in any beach-inspired color palette you love",
          "raw_text": "💡 Color combination suggestion from the designer: the sample starfish flows from sunny yellow at the center through warm orange to the tips, contrasted against an ocean blue background. Try coral pink starfish fading to deep rose on turquoise backgrounds for tropical reef charm, or go elegant with purple starfish gradients on seafoam green for mystical ocean depths. The gradient technique works beautifully in any beach-inspired color palette you love",
          "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-2",
          "label": "Note",
          "value": "💡 Clip stitch markers to the tips of all five starfish arms as soon as they appear. They keep your arm stitches from drifting, and on the squaring-off rounds they help you place the four corners evenly in the spaces between arms, which is the trickiest part of the whole square",
          "raw_text": "💡 Clip stitch markers to the tips of all five starfish arms as soon as they appear. They keep your arm stitches from drifting, and on the squaring-off rounds they help you place the four corners evenly in the spaces between arms, which is the trickiest part of the whole square",
          "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-3",
          "label": "Note",
          "value": "💡 Plan your gradient before you start. Lay the three colors side by side and decide whether the starfish fades from light at the center to dark at the tips or the reverse. The designer's sample puts the lightest shade (sunny yellow) in the middle and warm orange at the tips, which reads most like a real starfish",
          "raw_text": "💡 Plan your gradient before you start. Lay the three colors side by side and decide whether the starfish fades from light at the center to dark at the tips or the reverse. The designer's sample puts the lightest shade (sunny yellow) in the middle and warm orange at the tips, which reads most like a real starfish",
          "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-4",
          "label": "Note",
          "value": "💡 Since every round of the starfish can be a new color, wind small mini-balls for the first colors instead of working from full skeins. It keeps your lap tidy and makes the color changes quick. Weave in ends after every two rounds rather than saving them all for the end",
          "raw_text": "💡 Since every round of the starfish can be a new color, wind small mini-balls for the first colors instead of working from full skeins. It keeps your lap tidy and makes the color changes quick. Weave in ends after every two rounds rather than saving them all for the end",
          "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-5",
          "label": "Note",
          "value": "💡 Make sure the final starfish color has strong contrast with your background color. If the last gradient shade and the background are too close in value, the arms blur into the square. Photograph the two colors together in black and white on your phone to check the contrast instantly",
          "raw_text": "💡 Make sure the final starfish color has strong contrast with your background color. If the last gradient shade and the background are too close in value, the arms blur into the square. Photograph the two colors together in black and white on your phone to check the contrast instantly",
          "round_start": null,
          "round_end": null,
          "is_range": false,
          "stitch_count": null,
          "question": null,
          "answer": null,
          "abbr": null,
          "meaning": null
        },
        {
          "order": 7,
          "row_type": "info",
          "code": "note-6",
          "label": "Note",
          "value": "💡 When joining squares for a blanket, make sure every starfish points the same way, or deliberately rotate each square a quarter turn for a playful scattered-shells effect. Join-as-you-go on the last round or a simple whip stitch through the back loops both work beautifully with this block",
          "raw_text": "💡 When joining squares for a blanket, make sure every starfish points the same way, or deliberately rotate each square a quarter turn for a playful scattered-shells effect. Join-as-you-go on the last round or a simple whip stitch through the back loops both work beautifully with this block",
          "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": "How big is the finished starfish granny square?",
          "value": "The designer's completed square measures approximately 5.51 x 5.51 inches (about 14 cm). A lighter yarn such as DK with a smaller hook gives you a smaller square, while chunky yarn produces a noticeably larger block, so make a test square if size matters for your project",
          "raw_text": "The designer's completed square measures approximately 5.51 x 5.51 inches (about 14 cm). A lighter yarn such as DK with a smaller hook gives you a smaller square, while chunky yarn produces a noticeably larger block, so make a test square if size matters for your project",
          "round_start": null,
          "round_end": null,
          "is_range": false,
          "stitch_count": null,
          "question": "How big is the finished starfish granny square?",
          "answer": "The designer's completed square measures approximately 5.51 x 5.51 inches (about 14 cm). A lighter yarn such as DK with a smaller hook gives you a smaller square, while chunky yarn produces a noticeably larger block, so make a test square if size matters for your project",
          "abbr": null,
          "meaning": null
        },
        {
          "order": 2,
          "row_type": "faq",
          "code": "faq-2",
          "label": "Do I really need three colors, or can I make it in fewer?",
          "value": "The pattern calls for three colors to create the gradient starfish plus the background, but you can absolutely simplify. Two colors, one for the starfish and one for the square, still gives a clear, bold design. A single-color version works but the starfish becomes a subtle texture rather than a picture",
          "raw_text": "The pattern calls for three colors to create the gradient starfish plus the background, but you can absolutely simplify. Two colors, one for the starfish and one for the square, still gives a clear, bold design. A single-color version works but the starfish becomes a subtle texture rather than a picture",
          "round_start": null,
          "round_end": null,
          "is_range": false,
          "stitch_count": null,
          "question": "Do I really need three colors, or can I make it in fewer?",
          "answer": "The pattern calls for three colors to create the gradient starfish plus the background, but you can absolutely simplify. Two colors, one for the starfish and one for the square, still gives a clear, bold design. A single-color version works but the starfish becomes a subtle texture rather than a picture",
          "abbr": null,
          "meaning": null
        },
        {
          "order": 3,
          "row_type": "faq",
          "code": "faq-3",
          "label": "Is this pattern suitable for beginners?",
          "value": "It's a great first shaped square for a confident beginner. You'll need to be comfortable with a magic loop, working into back loops, front loops and the third loop, tall stitches like treble and double treble worked together, and changing colors between rounds. The seven rounds are short, so if you make a mistake it's quick to rip back and try again",
          "raw_text": "It's a great first shaped square for a confident beginner. You'll need to be comfortable with a magic loop, working into back loops, front loops and the third loop, tall stitches like treble and double treble worked together, and changing colors between rounds. The seven rounds are short, so if you make a mistake it's quick to rip back and try again",
          "round_start": null,
          "round_end": null,
          "is_range": false,
          "stitch_count": null,
          "question": "Is this pattern suitable for beginners?",
          "answer": "It's a great first shaped square for a confident beginner. You'll need to be comfortable with a magic loop, working into back loops, front loops and the third loop, tall stitches like treble and double treble worked together, and changing colors between rounds. The seven rounds are short, so if you make a mistake it's quick to rip back and try again",
          "abbr": null,
          "meaning": null
        },
        {
          "order": 4,
          "row_type": "faq",
          "code": "faq-4",
          "label": "How many starfish squares do I need for a blanket?",
          "value": "5.5 inches each, 36 squares in a 6 x 6 layout make a 33-inch baby blanket, and 80 squares in an 8 x 10 layout give you a roughly 44 x 55-inch throw. Add a border of two or three granny rounds to the finished blanket for a few extra inches",
          "raw_text": "5.5 inches each, 36 squares in a 6 x 6 layout make a 33-inch baby blanket, and 80 squares in an 8 x 10 layout give you a roughly 44 x 55-inch throw. Add a border of two or three granny rounds to the finished blanket for a few extra inches",
          "round_start": null,
          "round_end": null,
          "is_range": false,
          "stitch_count": null,
          "question": "How many starfish squares do I need for a blanket?",
          "answer": "5.5 inches each, 36 squares in a 6 x 6 layout make a 33-inch baby blanket, and 80 squares in an 8 x 10 layout give you a roughly 44 x 55-inch throw. Add a border of two or three granny rounds to the finished blanket for a few extra inches",
          "abbr": null,
          "meaning": null
        },
        {
          "order": 5,
          "row_type": "faq",
          "code": "faq-5",
          "label": "Will the starfish lie flat once the square is finished?",
          "value": "Yes, with even tension and a light blocking the square lies flat, while the clustered arms sit slightly raised for lovely texture. If your square cups or ripples, check that your corner chain spaces aren't too tight and pin it out to size while damp",
          "raw_text": "Yes, with even tension and a light blocking the square lies flat, while the clustered arms sit slightly raised for lovely texture. If your square cups or ripples, check that your corner chain spaces aren't too tight and pin it out to size while damp",
          "round_start": null,
          "round_end": null,
          "is_range": false,
          "stitch_count": null,
          "question": "Will the starfish lie flat once the square is finished?",
          "answer": "Yes, with even tension and a light blocking the square lies flat, while the clustered arms sit slightly raised for lovely texture. If your square cups or ripples, check that your corner chain spaces aren't too tight and pin it out to size while damp",
          "abbr": null,
          "meaning": null
        }
      ]
    }
  ],
  "conflicts": [],
  "validation_warnings": [],
  "images": [
    "data/images/starfish-granny-square-free-crochet-pattern-hero.webp",
    "data/images/starfish-granny-square-free-crochet-pattern-step-2.webp",
    "data/images/starfish-granny-square-free-crochet-pattern-step-3.webp",
    "data/images/starfish-granny-square-free-crochet-pattern-step-4.webp"
  ],
  "source_url": null,
  "thumbnail_images": [
    {
      "url": "data/images/starfish-granny-square-free-crochet-pattern-hero.webp",
      "alt": "Starfish Granny Square - Free Crochet Pattern — photo 1",
      "is_featured": true
    }
  ],
  "gallery_images": [
    {
      "url": "data/images/starfish-granny-square-free-crochet-pattern-hero.webp",
      "alt": "Starfish Granny Square - Free Crochet Pattern — photo 1",
      "is_featured": true
    },
    {
      "url": "data/images/starfish-granny-square-free-crochet-pattern-step-2.webp",
      "alt": "Starfish Granny Square - Free Crochet Pattern — photo 2",
      "is_featured": false
    },
    {
      "url": "data/images/starfish-granny-square-free-crochet-pattern-step-3.webp",
      "alt": "Starfish Granny Square - Free Crochet Pattern — photo 3",
      "is_featured": false
    },
    {
      "url": "data/images/starfish-granny-square-free-crochet-pattern-step-4.webp",
      "alt": "Starfish Granny Square - Free Crochet Pattern — photo 4",
      "is_featured": false
    }
  ],
  "_sanitized_holiday_count": 3
}