{
  "schema_version": "2.0",
  "page_type": "crochet_pattern_article",
  "source_id": null,
  "slug": "smiley-face-granny-square",
  "title": "Smiley Face Granny Square — Free Crochet Pattern",
  "meta_description": "Free smiley face granny square crochet pattern with 6 easy rounds. Make cheerful 4.4-inch squares for blankets, bags and cozy handmade gifts",
  "published_at": "2026-07-24",
  "updated_at": "2026-07-24",
  "author": "Ruby",
  "thumbnail_url": "data/images/smiley-face-granny-square-hero.webp",
  "meta": {
    "title": "Smiley Face Granny Square — Free Crochet Pattern",
    "pattern_name": "Smiley Face Granny Square — Free Crochet Pattern",
    "difficulty": "Easy-Intermediate",
    "time_needed": "1-2 Hours",
    "rating": 4.8,
    "made_count": "1.4K",
    "taxonomy": {
      "category": "Granny Squares",
      "skill_level": "Easy-Intermediate",
      "yarn_weight": "Worsted",
      "tags": [
        "granny square",
        "smiley face",
        "free pattern",
        "crochet square",
        "blanket square",
        "magic loop",
        "circle to square",
        "treble crochet",
        "happy face crochet",
        "beginner friendly",
        "wool yarn",
        "3mm hook"
      ]
    }
  },
  "cards": [
    {
      "order": 1,
      "card_type": "hero",
      "code": "hero",
      "title": "Smiley Face Granny Square — Free Crochet Pattern",
      "raw_heading": "",
      "quantity": 1,
      "groups": [],
      "rows": [
        {
          "order": 1,
          "row_type": "info",
          "code": "hero-info-1",
          "label": "Easy-Intermediate Level",
          "value": "Comfortable with the magic loop, dc increases and turning a circle into a square",
          "raw_text": "Comfortable with the magic loop, dc increases and turning a circle into a square",
          "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 45-75 minutes per square once you find your rhythm",
          "raw_text": "About 45-75 minutes per square once you find your rhythm",
          "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": "Cheerful Gift Square",
          "value": "A grin-in-yarn motif that turns any blanket or bag into an instant mood lifter",
          "raw_text": "A grin-in-yarn motif that turns any blanket or bag into an instant mood lifter",
          "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 pattern turns a humble worked-in-the-round circle into a beaming smiley face granny square — six rounds that start in a magic loop, grow through steady double crochet increases, and finish with a clever corner round that squares everything off. The face itself comes from a simple color change plus a few embroidered details, so you get a bold graphic motif without any intarsia or bobbin juggling. It's perfect for anyone who loves retro '70s energy and wants a square that makes people smile before they even touch it",
          "raw_text": "This pattern turns a humble worked-in-the-round circle into a beaming smiley face granny square — six rounds that start in a magic loop, grow through steady double crochet increases, and finish with a clever corner round that squares everything off. The face itself comes from a simple color change plus a few embroidered details, so you get a bold graphic motif without any intarsia or bobbin juggling. It's perfect for anyone who loves retro '70s energy and wants a square that makes people smile before they even touch it",
          "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 use a magic loop, ch-3 standing double crochets, double crochet increases, and then a mixed corner round that steps through treble, double, half double and single crochets to build the four corners. Nothing here is fussy — if you can work a granny square and count to twelve, you can make this. The rhythm of [dc inc, 2dc] repeats becomes almost meditative by round four. Expect around 45 to 75 minutes per square, faster once you've made two or three and stop reading the pattern line by line",
          "raw_text": "You'll use a magic loop, ch-3 standing double crochets, double crochet increases, and then a mixed corner round that steps through treble, double, half double and single crochets to build the four corners. Nothing here is fussy — if you can work a granny square and count to twelve, you can make this. The rhythm of [dc inc, 2dc] repeats becomes almost meditative by round four. Expect around 45 to 75 minutes per square, faster once you've made two or three and stop reading the pattern line by line",
          "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 roughly 4.41 × 4.41 inches in wool with a 3.00 mm hook, which is a lovely tight, dense fabric that holds its shape and blocks beautifully. The face reads clearly from across the room — flat, graphic, a little bit vintage. Three colors gives you the classic smiley; six colors gives you the snowman variation. Make one for a bag panel, thirty for a blanket, or a single one as a coaster for someone who needs a good day",
          "raw_text": "The finished square measures roughly 4.41 × 4.41 inches in wool with a 3.00 mm hook, which is a lovely tight, dense fabric that holds its shape and blocks beautifully. The face reads clearly from across the room — flat, graphic, a little bit vintage. Three colors gives you the classic smiley; six colors gives you the snowman variation. Make one for a bag panel, thirty for a blanket, or a single one as a coaster for someone who needs a good day",
          "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 fell for this square the second I finished round four and watched the circle start behaving like a square. There's something so satisfying about that [dc inc, 2dc] repeat — you can feel the fabric widening evenly under your fingers, and then round five swoops in with the tr inc, 2dc, 1hdc, 5sc, 1hdc, 2dc, tr inc, ch2 sequence and suddenly you have corners. That graduated stitch height, tall at the corners and short in the middle of each side, is honestly a little bit of engineering magic, and it never gets old. I also love how forgiving it is. The smiley face is embroidered on after the fact, so if your eyes end up slightly crooked, you just pull the yarn and redo them — no unraveling three rounds. Working with a 3.00 mm hook and wool gives you this dense, squishy little tile that feels substantial in your hand. And the sc border being optional means you can adapt to whatever joining method you already love. It's the rare pattern that's quick enough to finish in an evening but charming enough that people ask where you bought it",
          "raw_text": "I fell for this square the second I finished round four and watched the circle start behaving like a square. There's something so satisfying about that [dc inc, 2dc] repeat — you can feel the fabric widening evenly under your fingers, and then round five swoops in with the tr inc, 2dc, 1hdc, 5sc, 1hdc, 2dc, tr inc, ch2 sequence and suddenly you have corners. That graduated stitch height, tall at the corners and short in the middle of each side, is honestly a little bit of engineering magic, and it never gets old. I also love how forgiving it is. The smiley face is embroidered on after the fact, so if your eyes end up slightly crooked, you just pull the yarn and redo them — no unraveling three rounds. Working with a 3.00 mm hook and wool gives you this dense, squishy little tile that feels substantial in your hand. And the sc border being optional means you can adapt to whatever joining method you already love. It's the rare pattern that's quick enough to finish in an evening but charming enough that people ask where you bought it",
          "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": "Counting the ch-3 as a stitch on some",
          "value": "This pattern is explicit — the ch-3 always counts as one dc, and you always slip stitch into the TOP of that first ch-3 to close. Put a stitch marker in the top chain of the ch-3 at the start of each round so you can't miss it when you close. If your round-two count isn't 24 dc, that ch-3 is almost always the culprit",
          "raw_text": "This pattern is explicit — the ch-3 always counts as one dc, and you always slip stitch into the TOP of that first ch-3 to close. Put a stitch marker in the top chain of the ch-3 at the start of each round so you can't miss it when you close. If your round-two count isn't 24 dc, that ch-3 is almost always the culprit",
          "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": "Pulling the magic loop closed before",
          "value": "Work all 12 double crochets loosely into the loop first, then pull the tail gently and evenly until the center closes. If you tighten as you go, the stitches crowd and the circle cones. Give the tail a final firm tug after the slip stitch, then weave it in securely — magic loops can loosen over time, so a couple of extra weaving passes are worth it",
          "raw_text": "Work all 12 double crochets loosely into the loop first, then pull the tail gently and evenly until the center closes. If you tighten as you go, the stitches crowd and the circle cones. Give the tail a final firm tug after the slip stitch, then weave it in securely — magic loops can loosen over time, so a couple of extra weaving passes are worth it",
          "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": "Losing track of the [1dc, dc inc]",
          "value": "Place a removable stitch marker after every repeat — you should have 11 repeats plus the initial setup. If your circle ruffles, you've added extra increases; if it cups into a bowl, you've missed some. Count your stitches at the end of every round and write the number on a sticky note before you set the project down",
          "raw_text": "Place a removable stitch marker after every repeat — you should have 11 repeats plus the initial setup. If your circle ruffles, you've added extra increases; if it cups into a bowl, you've missed some. Count your stitches at the end of every round and write the number on a sticky note before you set the project down",
          "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": "Skipping or misplacing the ch-2 at each",
          "value": "The ch-2 IS the corner space and it's what lets the fabric turn ninety degrees. Work the tr inc, then chain 2 loosely, then start the next tr inc in the SAME stitch as the previous tr inc ended. If your corners pull in, try chaining those 2 loosely or going up a hook size just for that round",
          "raw_text": "The ch-2 IS the corner space and it's what lets the fabric turn ninety degrees. Work the tr inc, then chain 2 loosely, then start the next tr inc in the SAME stitch as the previous tr inc ended. If your corners pull in, try chaining those 2 loosely or going up a hook size just for that round",
          "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": "Joining the new yarn for round five",
          "value": "Before joining, lay the circle flat and decide where the face will point. Count your round-four stitches into four equal groups and join at the start of one group so each corner falls at the same spot on all four sides. If you're making a full blanket, join at the same relative position on every square so the seams match",
          "raw_text": "Before joining, lay the circle flat and decide where the face will point. Count your round-four stitches into four equal groups and join at the start of one group so each corner falls at the same spot on all four sides. If you're making a full blanket, join at the same relative position on every square so the seams match",
          "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": "Embroidering the eyes and smile",
          "value": "Use the same weight yarn as the square, split the strand if you want finer lines, and keep your surface stitches snug but not tight enough to pucker the fabric. Anchor the start and finish with a small backstitch on the wrong side rather than a knot, and steam block the square once the face is on so everything settles evenly",
          "raw_text": "Use the same weight yarn as the square, split the strand if you want finer lines, and keep your surface stitches snug but not tight enough to pucker the fabric. Anchor the start and finish with a small backstitch on the wrong side rather than a knot, and steam block the square once the face is on so everything settles evenly",
          "round_start": null,
          "round_end": null,
          "is_range": false,
          "stitch_count": null,
          "question": null,
          "answer": null,
          "abbr": null,
          "meaning": null
        },
        {
          "order": 7,
          "row_type": "mistake",
          "code": "mistake-7",
          "label": "Adding the optional single crochet",
          "value": "The sc border changes the edge stitch count, which matters for join-as-you-go and mattress-stitch seams alike. Make one test square, try your chosen join on it, and only then decide whether the border helps or fights you. If you're doing a whipstitch join, skipping the border usually gives a flatter, less bulky seam",
          "raw_text": "The sc border changes the edge stitch count, which matters for join-as-you-go and mattress-stitch seams alike. Make one test square, try your chosen join on it, and only then decide whether the border helps or fights you. If you're doing a whipstitch join, skipping the border usually gives a flatter, less bulky seam",
          "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 colors for basic style, 6 colors for snowman style; the sample is made with wool yarn. The finished granny square is about 4.41 × 4.41 inches",
              "raw_text": "yarn of your choice —3 colors for basic style, 6 colors for snowman style; the sample is made with wool yarn. The finished granny square is about 4.41 × 4.41 inches"
            },
            {
              "order": 2,
              "row_type": "item",
              "code": "mat-1-2",
              "label": "",
              "value": "Crochet Hook, We used a 3.00 mm crochet hook",
              "raw_text": "Crochet Hook, We used a 3.00 mm 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-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": 4,
          "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": 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-sl-st",
          "label": "Sl St",
          "value": "slip stitch for joining to a different round",
          "raw_text": "Sl St = slip stitch for joining to a 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 a different round"
        },
        {
          "order": 7,
          "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": 8,
          "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": 9,
          "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": 10,
          "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": 11,
          "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": 8,
      "card_type": "part",
      "code": "main-pattern",
      "title": "Main Pattern",
      "raw_heading": "",
      "quantity": 1,
      "groups": [],
      "rows": [
        {
          "order": 1,
          "row_type": "info",
          "code": "main-pattern-info-13",
          "label": "Overview",
          "value": "The smiley face is a lovely, decorative, and fun granny square for beginners. It is basically a large circle in the center with a granny-square border. There are two versions here: the popular basic smiley face, and a snowman version with a hat, nose and scarf.",
          "raw_text": "The smiley face is a lovely, decorative, and fun granny square for beginners. It is basically a large circle in the center with a granny-square border. There are two versions here: the popular basic smiley face, and a snowman version with a hat, nose and scarf.",
          "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": "main-pattern-info-14",
          "label": "Round 1 — Make a circle",
          "value": "Round 1 makes the circle at the center of the square. Everything is worked into a magic loop, and the ch3 at the start counts as your first dc.",
          "raw_text": "Round 1 makes the circle at the center of the square. Everything is worked into a magic loop, and the ch3 at the start counts as your first dc.",
          "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-1",
          "label": "Round 1",
          "value": "Magic loop, ch3 as a standing st(count as 1dc), 11dc, slst to the top of the first ch3.",
          "raw_text": "Round 1.  Magic loop, ch3 as a standing st(count as 1dc), 11dc, slst 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": 4,
          "row_type": "round",
          "code": "main-pattern-round-2",
          "label": "Round 2",
          "value": "ch3(count as 1dc), 1dc in the same st, dc inc in the remaining sts, slst to the top of the first ch3.",
          "raw_text": "Round 2.  ch3(count as 1dc), 1dc in the same st, dc inc in the remaining sts, slst to the top of the first ch3.",
          "round_start": 2,
          "round_end": 2,
          "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": "ch3 as a standing st(count as 1dc), dc inc, [1dc, dc inc] repeat 11 times, slst to the top of the first ch3.",
          "raw_text": "Round 3.  ch3 as a standing st(count as 1dc), dc inc, [1dc, dc inc] repeat 11 times, slst to the top of the first ch3.",
          "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-15",
          "label": "Round 4 — Finish the small face",
          "value": "Round 4 finishes the small face — this is the last round worked in the face color before the border color takes over.",
          "raw_text": "Round 4 finishes the small face — this is the last round worked in the face color before the border color takes over.",
          "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": "Ch3 as a standing st(count as 1dc), 1dc in the same st, 2dc; [dc inc, 2dc] repeat 11 times, slst to the top of the first ch3, fasten off.",
          "raw_text": "Round 4.  Ch3 as a standing st(count as 1dc), 1dc in the same st, 2dc; [dc inc, 2dc] repeat 11 times, slst to the top of the first ch3, 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": "info",
          "code": "main-pattern-info-16",
          "label": "Round 5 — Turn the circle into a square",
          "value": "Round 5 turns the circle into a square. The graduated stitch heights — treble at the corners, then dc, hdc and sc through the middle of each side — are what pull the round shape out into four corners.",
          "raw_text": "Round 5 turns the circle into a square. The graduated stitch heights — treble at the corners, then dc, hdc and sc through the middle of each side — are what pull the round shape out into four corners.",
          "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": "New yarn into any st, ch4(count as 1tr), 1tr in the same st, 2dc, 1hdc, 5sc, 1hdc, 2dc, tr inc, ch2; [tr inc in the same st, 2dc, 1hdc, 5sc, 1hdc, 2dc, tr inc, ch2] repeat 3 times, slst to the top of the first ch4.",
          "raw_text": "Round 5.  New yarn into any st, ch4(count as 1tr), 1tr in the same st, 2dc, 1hdc, 5sc, 1hdc, 2dc, tr inc, ch2; [tr inc in the same st, 2dc, 1hdc, 5sc, 1hdc, 2dc, tr inc, ch2] repeat 3 times, slst to the top of the first ch4.",
          "round_start": 5,
          "round_end": 5,
          "is_range": false,
          "stitch_count": null,
          "question": null,
          "answer": null,
          "abbr": null,
          "meaning": null
        },
        {
          "order": 10,
          "row_type": "instruction",
          "code": "main-pattern-info-17",
          "label": "Steps",
          "value": "join new yarn into any st; ch4 as a standing st (count as 1tr); 1tr in the same st, 2dc, 1hdc, 5sc, 1hdc, 2dc, tr inc, ch2; then [tr inc in the same st, 2dc, 1hdc, 5sc, 1hdc, 2dc, tr inc, ch2] repeat 3 times, slst to the top of the first ch4.",
          "raw_text": "Step by step: join new yarn into any st; ch4 as a standing st (count as 1tr); 1tr in the same st, 2dc, 1hdc, 5sc, 1hdc, 2dc, tr inc, ch2; then [tr inc in the same st, 2dc, 1hdc, 5sc, 1hdc, 2dc, tr inc, ch2] repeat 3 times, slst to the top of the first ch4.",
          "round_start": null,
          "round_end": null,
          "is_range": false,
          "stitch_count": null,
          "question": null,
          "answer": null,
          "abbr": null,
          "meaning": null
        },
        {
          "order": 11,
          "row_type": "info",
          "code": "main-pattern-info-18",
          "label": "Round 6 — Single crochet border (optional)",
          "value": "The single crochet border is optional. You can skip this based on your joining method.",
          "raw_text": "The single crochet border is optional. You can skip this based on your joining method.",
          "round_start": null,
          "round_end": null,
          "is_range": false,
          "stitch_count": null,
          "question": null,
          "answer": null,
          "abbr": null,
          "meaning": null
        },
        {
          "order": 12,
          "row_type": "round",
          "code": "main-pattern-round-6",
          "label": "Round 6",
          "value": "ch1+1sc in this st, 1sc in each st around, 2sc+ch2+2sc in each corner as you go, slst to the first sc at the end. Fasten off.",
          "raw_text": "Round 6.  ch1+1sc in this st, 1sc in each st around, 2sc+ch2+2sc in each corner as you go, slst to the first sc at the end. Fasten off.",
          "round_start": 6,
          "round_end": 6,
          "is_range": false,
          "stitch_count": null,
          "question": null,
          "answer": null,
          "abbr": null,
          "meaning": null
        },
        {
          "order": 13,
          "row_type": "info",
          "code": "main-pattern-info-19",
          "label": "Square or diamond",
          "value": "You can either use the square as a \"square\" or as a \"diamond\" — decide which way up the face will sit before you stitch the features on.",
          "raw_text": "You can either use the square as a \"square\" or as a \"diamond\" — decide which way up the face will sit before you stitch the features on.",
          "round_start": null,
          "round_end": null,
          "is_range": false,
          "stitch_count": null,
          "question": null,
          "answer": null,
          "abbr": null,
          "meaning": null
        },
        {
          "order": 14,
          "row_type": "info",
          "code": "main-pattern-info-1",
          "label": "Stitch the mouth and eyes",
          "value": "Use a contrasting color yarn to stitch the mouth and eyes onto the granny square. You can personalize the expression or create two round eyes for a unique touch.",
          "raw_text": "Use a contrasting color yarn to stitch the mouth and eyes onto the granny square. You can personalize the expression or create two round eyes for a unique touch.",
          "round_start": null,
          "round_end": null,
          "is_range": false,
          "stitch_count": null,
          "question": null,
          "answer": null,
          "abbr": null,
          "meaning": null
        },
        {
          "order": 15,
          "row_type": "subhead",
          "code": "main-pattern-info-2",
          "label": "",
          "value": "Snowman Smile Face Granny Square",
          "raw_text": "Snowman Smile Face Granny Square",
          "round_start": null,
          "round_end": null,
          "is_range": false,
          "stitch_count": null,
          "question": null,
          "answer": null,
          "abbr": null,
          "meaning": null
        },
        {
          "order": 16,
          "row_type": "info",
          "code": "main-pattern-info-20",
          "label": "Snowman color change",
          "value": "To make a snowman smile-face granny square, first change the color for round 4 to the border color, since we need space for the cute hat.",
          "raw_text": "To make a snowman smile-face granny square, first change the color for round 4 to the border color, since we need space for the cute hat.",
          "round_start": null,
          "round_end": null,
          "is_range": false,
          "stitch_count": null,
          "question": null,
          "answer": null,
          "abbr": null,
          "meaning": null
        },
        {
          "order": 17,
          "row_type": "info",
          "code": "main-pattern-info-3",
          "label": "Snowman colors",
          "value": "To give this square a wintery, Christmas feel, we use dark red for the border and the last round of the face (to create a smaller face), and beige for the first three rounds of the face.",
          "raw_text": "To give this square a wintery, Christmas feel, we use dark red for the border and the last round of the face (to create a smaller face), and beige for the first three rounds of the face.",
          "round_start": null,
          "round_end": null,
          "is_range": false,
          "stitch_count": null,
          "question": null,
          "answer": null,
          "abbr": null,
          "meaning": null
        },
        {
          "order": 18,
          "row_type": "info",
          "code": "main-pattern-info-21",
          "label": "The nose",
          "value": "Let's make a cute nose for the snowman.",
          "raw_text": "Let's make a cute nose for the snowman.",
          "round_start": null,
          "round_end": null,
          "is_range": false,
          "stitch_count": null,
          "question": null,
          "answer": null,
          "abbr": null,
          "meaning": null
        },
        {
          "order": 19,
          "row_type": "subhead",
          "code": "main-pattern-info-4",
          "label": "",
          "value": "Nose",
          "raw_text": "ch4, return, sk1 and in third loop only, slst, 1sc, 1hdc, ch1. Fasten off, leave long tails for attaching.",
          "round_start": null,
          "round_end": null,
          "is_range": false,
          "stitch_count": null,
          "question": null,
          "answer": null,
          "abbr": null,
          "meaning": null
        },
        {
          "order": 20,
          "row_type": "instruction",
          "code": "main-pattern-info-4",
          "label": "Steps",
          "value": "ch4, return, sk1 and in third loop only, slst, 1sc, 1hdc, ch1. Fasten off, leave long tails for attaching.",
          "raw_text": "ch4, return, sk1 and in third loop only, slst, 1sc, 1hdc, ch1. Fasten off, leave long tails for attaching.",
          "round_start": null,
          "round_end": null,
          "is_range": false,
          "stitch_count": null,
          "question": null,
          "answer": null,
          "abbr": null,
          "meaning": null
        },
        {
          "order": 21,
          "row_type": "info",
          "code": "main-pattern-info-22",
          "label": "The hat",
          "value": "The snowman's hat is crocheted in rows. We will finish this part with two colors of yarn and 5 rows.",
          "raw_text": "The snowman's hat is crocheted in rows. We will finish this part with two colors of yarn and 5 rows.",
          "round_start": null,
          "round_end": null,
          "is_range": false,
          "stitch_count": null,
          "question": null,
          "answer": null,
          "abbr": null,
          "meaning": null
        },
        {
          "order": 22,
          "row_type": "subhead",
          "code": "main-pattern-info-5",
          "label": "",
          "value": "Hat-Row 1",
          "raw_text": "ch9, return, sk1, 1sc in each remaining ch, fasten off.",
          "round_start": null,
          "round_end": null,
          "is_range": false,
          "stitch_count": null,
          "question": null,
          "answer": null,
          "abbr": null,
          "meaning": null
        },
        {
          "order": 23,
          "row_type": "instruction",
          "code": "main-pattern-info-5",
          "label": "Steps",
          "value": "ch9, return, sk1, 1sc in each remaining ch, fasten off.",
          "raw_text": "ch9, return, sk1, 1sc in each remaining ch, fasten off.",
          "round_start": null,
          "round_end": null,
          "is_range": false,
          "stitch_count": null,
          "question": null,
          "answer": null,
          "abbr": null,
          "meaning": null
        },
        {
          "order": 24,
          "row_type": "subhead",
          "code": "main-pattern-info-6",
          "label": "",
          "value": "Hat-Row 2",
          "raw_text": "Add new yarn in the right-most st, ch1 as a standing st, sc2tog over next 2 sts, 4sc, sc2tog.",
          "round_start": null,
          "round_end": null,
          "is_range": false,
          "stitch_count": null,
          "question": null,
          "answer": null,
          "abbr": null,
          "meaning": null
        },
        {
          "order": 25,
          "row_type": "instruction",
          "code": "main-pattern-info-6",
          "label": "Steps",
          "value": "Add new yarn in the right-most st, ch1 as a standing st, sc2tog over next 2 sts, 4sc, sc2tog.",
          "raw_text": "Add new yarn in the right-most st, ch1 as a standing st, sc2tog over next 2 sts, 4sc, sc2tog.",
          "round_start": null,
          "round_end": null,
          "is_range": false,
          "stitch_count": null,
          "question": null,
          "answer": null,
          "abbr": null,
          "meaning": null
        },
        {
          "order": 26,
          "row_type": "subhead",
          "code": "main-pattern-info-7",
          "label": "",
          "value": "Hat-Row 3",
          "raw_text": "Turn over, ch1 as a standing st, sc2tog over next 2 sts, 2sc, sc2tog.",
          "round_start": null,
          "round_end": null,
          "is_range": false,
          "stitch_count": null,
          "question": null,
          "answer": null,
          "abbr": null,
          "meaning": null
        },
        {
          "order": 27,
          "row_type": "instruction",
          "code": "main-pattern-info-7",
          "label": "Steps",
          "value": "Turn over, ch1 as a standing st, sc2tog over next 2 sts, 2sc, sc2tog.",
          "raw_text": "Turn over, ch1 as a standing st, sc2tog over next 2 sts, 2sc, sc2tog.",
          "round_start": null,
          "round_end": null,
          "is_range": false,
          "stitch_count": null,
          "question": null,
          "answer": null,
          "abbr": null,
          "meaning": null
        },
        {
          "order": 28,
          "row_type": "subhead",
          "code": "main-pattern-info-8",
          "label": "",
          "value": "Hat-Row 4",
          "raw_text": "Turn over, ch1 as a standing st, work sc2tog 2 times.",
          "round_start": null,
          "round_end": null,
          "is_range": false,
          "stitch_count": null,
          "question": null,
          "answer": null,
          "abbr": null,
          "meaning": null
        },
        {
          "order": 29,
          "row_type": "instruction",
          "code": "main-pattern-info-8",
          "label": "Steps",
          "value": "Turn over, ch1 as a standing st, work sc2tog 2 times.",
          "raw_text": "Turn over, ch1 as a standing st, work sc2tog 2 times.",
          "round_start": null,
          "round_end": null,
          "is_range": false,
          "stitch_count": null,
          "question": null,
          "answer": null,
          "abbr": null,
          "meaning": null
        },
        {
          "order": 30,
          "row_type": "subhead",
          "code": "main-pattern-info-9",
          "label": "",
          "value": "Hat-Row 5",
          "raw_text": "Turn over, ch1 as a standing st, sc2tog, ch1. Fasten off. Leave a long tail for attaching.",
          "round_start": null,
          "round_end": null,
          "is_range": false,
          "stitch_count": null,
          "question": null,
          "answer": null,
          "abbr": null,
          "meaning": null
        },
        {
          "order": 31,
          "row_type": "instruction",
          "code": "main-pattern-info-9",
          "label": "Steps",
          "value": "Turn over, ch1 as a standing st, sc2tog, ch1. Fasten off. Leave a long tail for attaching.",
          "raw_text": "Turn over, ch1 as a standing st, sc2tog, ch1. Fasten off. Leave a long tail for attaching.",
          "round_start": null,
          "round_end": null,
          "is_range": false,
          "stitch_count": null,
          "question": null,
          "answer": null,
          "abbr": null,
          "meaning": null
        },
        {
          "order": 32,
          "row_type": "info",
          "code": "main-pattern-info-23",
          "label": "Pom-pom of the hat",
          "value": "Using a bobble stitch is a quick way of making a small pom-pom for the hat.",
          "raw_text": "Using a bobble stitch is a quick way of making a small pom-pom for the hat.",
          "round_start": null,
          "round_end": null,
          "is_range": false,
          "stitch_count": null,
          "question": null,
          "answer": null,
          "abbr": null,
          "meaning": null
        },
        {
          "order": 33,
          "row_type": "subhead",
          "code": "main-pattern-info-10",
          "label": "",
          "value": "Pom-pom",
          "raw_text": "Magic loop, ch3, 7-dc-bo, ch3, slst to the loop, pull the tail tightly and fasten off. Leave long tails for attaching.",
          "round_start": null,
          "round_end": null,
          "is_range": false,
          "stitch_count": null,
          "question": null,
          "answer": null,
          "abbr": null,
          "meaning": null
        },
        {
          "order": 34,
          "row_type": "instruction",
          "code": "main-pattern-info-10",
          "label": "Steps",
          "value": "Magic loop, ch3, 7-dc-bo, ch3, slst to the loop, pull the tail tightly and fasten off. Leave long tails for attaching.",
          "raw_text": "Magic loop, ch3, 7-dc-bo, ch3, slst to the loop, pull the tail tightly and fasten off. Leave long tails for attaching.",
          "round_start": null,
          "round_end": null,
          "is_range": false,
          "stitch_count": null,
          "question": null,
          "answer": null,
          "abbr": null,
          "meaning": null
        },
        {
          "order": 35,
          "row_type": "info",
          "code": "main-pattern-info-11",
          "label": "Scarf",
          "value": "Ch21. Make a knot on one side of the chain. Leave a long tail on another side for attaching.",
          "raw_text": "Ch21. Make a knot on one side of the chain. Leave a long tail on another side for attaching.",
          "round_start": null,
          "round_end": null,
          "is_range": false,
          "stitch_count": null,
          "question": null,
          "answer": null,
          "abbr": null,
          "meaning": null
        },
        {
          "order": 36,
          "row_type": "info",
          "code": "main-pattern-info-12",
          "label": "Assemble",
          "value": "Attach the hat, nose, and scarf to your smiley face granny square, then sew the pom-pom onto the top of the hat.",
          "raw_text": "Attach the hat, nose, and scarf to your smiley face granny square, then sew the pom-pom onto the top of the hat.",
          "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": "💡 The sample uses a 3.00 mm hook with wool yarn to hit that 4.41 × 4.41 inch finished size. If you're using a heavier worsted, go up to 4.00 mm and expect a square closer to 5.5 inches — just be consistent across every square in a project, because mismatched sizes are painfully obvious once you start seaming",
          "raw_text": "💡 The sample uses a 3.00 mm hook with wool yarn to hit that 4.41 × 4.41 inch finished size. If you're using a heavier worsted, go up to 4.00 mm and expect a square closer to 5.5 inches — just be consistent across every square in a project, because mismatched sizes are painfully obvious once you start seaming",
          "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": "💡 Make your first square as a gauge test, then measure it and multiply. For a 40 × 50 inch throw at 4.41 inches per square you'll need roughly 9 across and 11 down, so 99 squares plus a border. Knowing that number before you start saves a mid-project yarn panic",
          "raw_text": "💡 Make your first square as a gauge test, then measure it and multiply. For a 40 × 50 inch throw at 4.41 inches per square you'll need roughly 9 across and 11 down, so 99 squares plus a border. Knowing that number before you start saves a mid-project yarn panic",
          "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": "💡 Keep a removable stitch marker in the top of every ch-3 and ch-4 standing stitch. Because those chains count as stitches, the marker is your insurance against slip-stitching into the wrong loop when you close the round — the single most common source of a wonky granny square",
          "raw_text": "💡 Keep a removable stitch marker in the top of every ch-3 and ch-4 standing stitch. Because those chains count as stitches, the marker is your insurance against slip-stitching into the wrong loop when you close the round — the single most common source of a wonky granny 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-4",
          "label": "Note",
          "value": "💡 Round five uses four different stitch heights in one pass — tr, dc, hdc, sc, then back up again. Read the sequence out loud as you work it the first time, and don't worry if it feels awkward; that height gradient is exactly what pulls a circle into a square, and by the third corner your hands will know it",
          "raw_text": "💡 Round five uses four different stitch heights in one pass — tr, dc, hdc, sc, then back up again. Read the sequence out loud as you work it the first time, and don't worry if it feels awkward; that height gradient is exactly what pulls a circle into a square, and by the third corner your hands will know it",
          "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": "💡 For the color change into round five, don't cut the previous yarn too short. Leave a 6-inch tail, weave it in along the back of the round-four stitches rather than across the face, and it'll disappear completely once the square is blocked",
          "raw_text": "💡 For the color change into round five, don't cut the previous yarn too short. Leave a 6-inch tail, weave it in along the back of the round-four stitches rather than across the face, and it'll disappear completely once the square is blocked",
          "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": "💡 Block every square before joining. Wool responds beautifully to a light steam or wet block, and pinning each square to exactly the same measurement on a blocking mat means your seams line up perfectly instead of easing in wobbly edges square by square",
          "raw_text": "💡 Block every square before joining. Wool responds beautifully to a light steam or wet block, and pinning each square to exactly the same measurement on a blocking mat means your seams line up perfectly instead of easing in wobbly edges square by square",
          "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-7",
          "label": "Note",
          "value": "💡 If you're making the six-color snowman variation, wind small butterfly bobbins of each accent color before you start rather than working from full skeins. Six balls tangling on your lap is the fastest way to lose enthusiasm for an otherwise cheerful project",
          "raw_text": "💡 If you're making the six-color snowman variation, wind small butterfly bobbins of each accent color before you start rather than working from full skeins. Six balls tangling on your lap is the fastest way to lose enthusiasm for an otherwise cheerful project",
          "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 smiley face granny square?",
          "value": "The sample measures about 4.41 × 4.41 inches using wool yarn and a 3.00 mm crochet hook. Your size will vary with yarn weight and tension, so always make one square first and measure before you commit to a full blanket's worth",
          "raw_text": "The sample measures about 4.41 × 4.41 inches using wool yarn and a 3.00 mm crochet hook. Your size will vary with yarn weight and tension, so always make one square first and measure before you commit to a full blanket's worth",
          "round_start": null,
          "round_end": null,
          "is_range": false,
          "stitch_count": null,
          "question": "How big is the finished smiley face granny square?",
          "answer": "The sample measures about 4.41 × 4.41 inches using wool yarn and a 3.00 mm crochet hook. Your size will vary with yarn weight and tension, so always make one square first and measure before you commit to a full blanket's worth",
          "abbr": null,
          "meaning": null
        },
        {
          "order": 2,
          "row_type": "faq",
          "code": "faq-2",
          "label": "How many colors do I actually need for this pattern?",
          "value": "Three colors gets you the classic smiley — one for the face, one for the background and corners, and one for the eyes and smile. The snowman variation calls for six colors so you can add a hat, nose and scarf details",
          "raw_text": "Three colors gets you the classic smiley — one for the face, one for the background and corners, and one for the eyes and smile. The snowman variation calls for six colors so you can add a hat, nose and scarf details",
          "round_start": null,
          "round_end": null,
          "is_range": false,
          "stitch_count": null,
          "question": "How many colors do I actually need for this pattern?",
          "answer": "Three colors gets you the classic smiley — one for the face, one for the background and corners, and one for the eyes and smile. The snowman variation calls for six colors so you can add a hat, nose and scarf details",
          "abbr": null,
          "meaning": null
        },
        {
          "order": 3,
          "row_type": "faq",
          "code": "faq-3",
          "label": "Do I have to add the single crochet border round?",
          "value": "No, it's completely optional and depends on how you plan to join your squares. If you're using join-as-you-go or a whipstitch seam, skipping the border often gives a flatter, tidier result; if the squares are standing alone as coasters, the border gives a nice crisp finish",
          "raw_text": "No, it's completely optional and depends on how you plan to join your squares. If you're using join-as-you-go or a whipstitch seam, skipping the border often gives a flatter, tidier result; if the squares are standing alone as coasters, the border gives a nice crisp finish",
          "round_start": null,
          "round_end": null,
          "is_range": false,
          "stitch_count": null,
          "question": "Do I have to add the single crochet border round?",
          "answer": "No, it's completely optional and depends on how you plan to join your squares. If you're using join-as-you-go or a whipstitch seam, skipping the border often gives a flatter, tidier result; if the squares are standing alone as coasters, the border gives a nice crisp finish",
          "abbr": null,
          "meaning": null
        },
        {
          "order": 4,
          "row_type": "faq",
          "code": "faq-4",
          "label": "Why is my square coming out as a wavy",
          "value": "Rippling almost always means extra increases crept into round three or four, while cupping means you missed some. Count your stitches at the end of every round and check that you worked exactly 11 repeats of each bracketed sequence before closing",
          "raw_text": "Rippling almost always means extra increases crept into round three or four, while cupping means you missed some. Count your stitches at the end of every round and check that you worked exactly 11 repeats of each bracketed sequence before closing",
          "round_start": null,
          "round_end": null,
          "is_range": false,
          "stitch_count": null,
          "question": "Why is my square coming out as a wavy circle instead of flat?",
          "answer": "Rippling almost always means extra increases crept into round three or four, while cupping means you missed some. Count your stitches at the end of every round and check that you worked exactly 11 repeats of each bracketed sequence before closing",
          "abbr": null,
          "meaning": null
        },
        {
          "order": 5,
          "row_type": "faq",
          "code": "faq-5",
          "label": "Can I use cotton yarn instead of wool for this pattern?",
          "value": "Absolutely — cotton gives a crisper, less stretchy square that's ideal for coasters, potholders and washcloths. Just note that cotton has less give, so you may want to go up half a hook size to keep the round-five corner chains from pulling tight",
          "raw_text": "Absolutely — cotton gives a crisper, less stretchy square that's ideal for coasters, potholders and washcloths. Just note that cotton has less give, so you may want to go up half a hook size to keep the round-five corner chains from pulling tight",
          "round_start": null,
          "round_end": null,
          "is_range": false,
          "stitch_count": null,
          "question": "Can I use cotton yarn instead of wool for this pattern?",
          "answer": "Absolutely — cotton gives a crisper, less stretchy square that's ideal for coasters, potholders and washcloths. Just note that cotton has less give, so you may want to go up half a hook size to keep the round-five corner chains from pulling tight",
          "abbr": null,
          "meaning": null
        },
        {
          "order": 6,
          "row_type": "faq",
          "code": "faq-6",
          "label": "Is this pattern suitable for a confident beginner?",
          "value": "Yes, if you're comfortable with a magic loop and double crochet increases. Rounds one through four are very repetitive and forgiving, and round five is the only genuinely new skill — just take it slowly and read each stitch of the corner sequence as you go",
          "raw_text": "Yes, if you're comfortable with a magic loop and double crochet increases. Rounds one through four are very repetitive and forgiving, and round five is the only genuinely new skill — just take it slowly and read each stitch of the corner sequence as you go",
          "round_start": null,
          "round_end": null,
          "is_range": false,
          "stitch_count": null,
          "question": "Is this pattern suitable for a confident beginner?",
          "answer": "Yes, if you're comfortable with a magic loop and double crochet increases. Rounds one through four are very repetitive and forgiving, and round five is the only genuinely new skill — just take it slowly and read each stitch of the corner sequence as you go",
          "abbr": null,
          "meaning": null
        }
      ]
    }
  ],
  "conflicts": [],
  "validation_warnings": [],
  "images": [
    "data/images/smiley-face-granny-square-hero.webp",
    "data/images/smiley-face-granny-square-step-2.webp",
    "data/images/smiley-face-granny-square-step-3.webp",
    "data/images/smiley-face-granny-square-step-4.webp"
  ],
  "source_url": null,
  "thumbnail_images": [
    {
      "url": "data/images/smiley-face-granny-square-hero.webp",
      "alt": "Smiley Face Granny Square — Free Crochet Pattern — photo 1",
      "is_featured": true
    }
  ],
  "gallery_images": [
    {
      "url": "data/images/smiley-face-granny-square-hero.webp",
      "alt": "Smiley Face Granny Square — Free Crochet Pattern — photo 1",
      "is_featured": true
    },
    {
      "url": "data/images/smiley-face-granny-square-step-2.webp",
      "alt": "Smiley Face Granny Square — Free Crochet Pattern — photo 2",
      "is_featured": false
    },
    {
      "url": "data/images/smiley-face-granny-square-step-3.webp",
      "alt": "Smiley Face Granny Square — Free Crochet Pattern — photo 3",
      "is_featured": false
    },
    {
      "url": "data/images/smiley-face-granny-square-step-4.webp",
      "alt": "Smiley Face Granny Square — Free Crochet Pattern — photo 4",
      "is_featured": false
    }
  ],
  "_sanitized_holiday_count": 2
}