• Crochet Patterns
    • Beginner Patterns
    • Hats
    • Scarves
    • Accessories
    • Bags & Containers
    • Home Decor
    • Kitchen
    • Bath
    • Cotton Yarn Crochet Patterns
  • Round Ups
  • Tutorials
  • Craft Shows
    • Printables
  • Crocheting With Cotton Yarn
    • Facebook
    • Instagram
    • Pinterest
    • Twitter
    • YouTube

Cute As A Button Crochet & Craft

Crochet Patterns & Tutorials

  • Home
  • About
    • Privacy Policy
    • Cookie Policy
  • Blog
  • Etsy Shop
  • Contact
  • 5 Days of Cotton 2022

Bags & Containers Crochet Patterns

Crossbody Bag Crochet Pattern | Belt Bag | Fanny Pack

Fanny packs have made a comeback recently! But they’re not called fanny packs anymore! You can call them crossbody bags, belt bags, hip packs or waist packs now! Whatever you call them, they are still a marvelous invention for keeping your hands free… they’re just way cuter and more stylish now! This is just the crossbody bag crochet pattern to get you back into the trend!

Crocheted crossbody bag, sitting on an all white background, with zipper side up towards the camera.

A crossbody bag can be worn in several ways. The traditional way is around the hips or waist. The more recent trend is to wear them wrapped from one shoulder to the opposite side of your waist (or “across your body”).

Crossybody Bags: The most practical bag for travel

Whichever way you choose to wear your the bag, it is as comfortable and practical as ever. Wearing a belt bag, or crossbody bag, around your waist or across your body frees up your hands to do whatever you need. Besides being hands free, it’s also light and safe. Great for moms, athletes and just busy people!

Woman in a blue sweatshirt wearing a crocheted crossbody bag around her shoulder and waist. Green grass and trees in a blurred background.

Wearing a belt bag removes a lot of weight from your neck and shoulder that you would normally feel if you were to carry a traditional purse or bag. When I am wearing my purse over my shoulder, it doesn’t take me long to start to feel the strain in my neck and back. It is a huge relief to remove that burden!

The size of the crossbody bag is also very practical. It may not hold as much as a large bucket purse, but it is large enough to hold the essentials, like your wallet, phone, keys and other small items. The smaller size makes it light and manageable so that you can move around like it isn’t even there.

Lastly, the classic benefit of the belt bag… it’s safe! You don’t have to worry about anyone snatching your bag off your shoulder because it is literally buckled around your body! Such a great worry-free item for going out!

Close up of the zipper on a crocheted crossbbody bag. Pure white background.

The Yarn: Lion Brand For the Home Cording yarn

This post contains affiliate links, which means I may receive compensation (at no additional cost to you) if you make a purchase using these links.

Lion Brand For the Home Cording yarn is a size medium (4) weight yarn. It is 50% recycled cotton and 50% polyester. The unique thing about this yarn is how sturdy it is. It has a drape that is similar to the feel of twine, but without the roughness. It is smooth and straight. There is absolutely no stretch to it.

Crocheted crossbody bag laying on its side on a pure white backdrop.

It is just these qualities that make it perfect for this project. For a bag like this, you really want it to hold its shape. The stiffness of the yarn allows you to create a bag that is sturdy, does not have holes and looks great!

The fact that it is also smooth and has a nice sheen makes it beautiful too! The stitch definition is phenomenal!

The color choices for this yarn are just beautiful as well. They are muted and earthy and rich. It is hard to pick which one to use and if you use more than one they would all look beautiful together.

The Pattern

If you would like to purchase an inexpensive, ad-free printable pdf version of this crossbody bag crochet pattern, you can find it here at my Etsy shop.

Add this crossbody bag crochet pattern to your Ravelry favorites HERE.

Crochet crossbody bag laying flat on white background.

Materials:

  • 224 Yards Size 4 Yarn (I used Lion Brand ‘For The Home Cording’ in Sage)
  • US H/ 5.0 mm Crochet Hook
  • 2” Adjustable Buckle Snap
  • 8” Zipper
  • Yarn Needle
  • Scissors

Gauge:

4” x 4” swatch of single crochet = 16 rows x 14 stitches

Sizing:

8 ½” wide x 5 ½” tall x 1 ½” deep

Stitches Used:

(ch) chain
(sl st) slip stitch
(fsc) foundation single crochet
(sc) single crochet
(sc2tog) single crochet two together

Pattern Notes:

Beginning chain of each round does not count as a stitch.

I tend to crochet tightly. So be sure to check your gauge and if you are crocheting more loosely you can move to a smaller hook (or larger if you crochet even more tightly).
Some people find they even need to go down two hook sizes to meet my gauge.

The pattern begins by constructing each panel of the bag separately. Then the pieces will be sewn together with a yarn needle and yarn.

Main Panel (make 2 of these):

Row 1: Fsc 25. Row should be roughly 7” wide.

Note: if you do not like to use foundation stitches, you can chain 26. Sc in the 2nd chain from the hook and in each chain across (25). However, foundation stitches will make stitching around the panel later a little easier.

Row 2: Ch 1. Turn. Place 2 sc in the same stitch. Place one sc in each of the next 23 stitches. Place 2 sc in the last stitch. (27)

Row 3: Ch 1. Turn. Place a sc in the same stitch and in each stitch across. (27)

Rows 4 – 16: Repeat Row 3. (27)

The panel should be about 4 ¾” tall now.

Row 17: Ch 1. Turn. Sc2tog (half of the stitch will be in the same stitch and half in the next stitch). Place 1 sc in each of the next 23 stitches. Sc2tog. (25)

Row 18: Ch 1. Turn. Sc in the same stitch and in each stitch across. (25)

Row 19: Ch 1. Turn. Sc2tog (half of the stitch will be in the same stitch and half in the next stitch). Place 1 sc in each of the next 21 stitches. Sc2tog. (23)

The panel should be about 5” tall now.

Edging: Ch 1. Turn. Place a sl st in each stitch across the row. (23) When you get to the end, continue to slip stitch down the side by placing 1 sl st in the end of each row. (19) Slip stitch along the bottom of the panel (25) and back up the last side (19). Join with a sl st to the first sl st of the edging.

Note: If you are using the suggested cording yarn, when you work along the sides of the panel, it works best to only grab one of the outermost strands of the cording from the end of each row.

Don’t forget to make 2 panels. Finish off and weave in your ends. You may want to add a marker to the top or bottom of the panel to remind you which side is which.

First 2 panels of crossbody bag with measuring tape to show size.

Pocket Panel:

Repeat the instructions for the main panels, but stop after row 14.

Follow the same instructions for the edging. You should have 27 slip stitches along the top of the panel, 14 on each side and 25 on the bottom.

The pocket panel should be about 4” tall. Finish off and weave in your ends.

Pocket panel for crossbody bag with measuring tape to show size.

Attach the Pocket Panel to Main Panel:

Find the front of one of your panels. The front will be the side with the slip stitch edging facing towards you. Place the pocket panel on top of the main panel (also with the front side facing you). Line the two panels up so that the bottom rows are aligned with each other.

Cut a piece of yarn 4x the width of the panels. Attach to a yarn needle.

Starting at the upper right corner of the pocket, insert needle through the back loop of the top right corner slip stitch and through the front loop of the corresponding slip stitch on the main panel. Pull through and leave enough tail to insert into the back side of the pocket later to secure and tie off.

Use the yarn needle to whip stitch down the right side, going into the back loop of the slip stitches on the pocket panel and the front loop of the corresponding slip stitch on the main panel.

Continue along the bottom of the panels and up the left side. When you get to the top left corner of the pocket panel, insert the needle towards the back of the panel. Tie a knot to secure and weave in the end.

Secure the beginning tail on the back side of the pocket panel as well and weave in.

Adding Zipper to Main Panels:

On the back side of the zipper, use a pencil to draw a line where you want to connect the panel to the zipper (Roughly a quarter inch from the edge).

Hand holding a white pencil and drawing a line on a black zipper.

Cut a piece of yarn 3x as long as the panel width. Attach to yarn needle.

Find the front of the panel without the pocket. The front will be the side with the slip stitch edging facing towards you. This is not terribly important, but will give it a more finished look. Attach the yarn with a knot into a back loop behind the top right corner.

Insert the yarn needle into the back 2 loops of the top right corner of the panel. Then insert the needle into the right side of the zipper. Make sure it goes through where you have drawn the pencil line on the back. Pull snug.

Insert the yarn needle into the back side of the zipper, about 1 crochet stitch length to the left of where you just came through. Push through the zipper and then forward through the back two loops of the next stitch of the top row of the panel. Pull snug.

Insert the yarn needle from the front of the panel, through the back two loops of the next stitch to the left. Then insert the needle into the right side of the zipper directly behind the stitch (along your pencil line).

Yarn needle attaching one panel to the zipper for the crossbody bag.

Continue this method across the top panel.

Back
Front

Position the pocket panel with the front facing you. Place the other panel above it with the unsewn side of the zipper (front side towards you) lined up with the top of the panel.

2 crossbody bag panels lined up along the zipper. One is sewn on and the second is ready to sew.

Repeat the process to attach the zipper to the panel.

Buckle Strap:

Row 1: Ch 8. Sc in the 2nd chain from the hook. Sc in each chain across. (7)

Row 2: Ch 1. Turn. Sc in the same stitch and each stitch across. (7)

Rows 3+: Repeat Row 2. (7)

To customize the length of your strap, first measure the circumference of where you want your strap to wrap around. Take that measurement and add 6”.

Your bag can wrap around your waist, or it can wrap across your body from waist to shoulder.

I measured where I would like my bag to fit across my waist and shoulder and got a circumference of 45”. I added 6” to this for a total of 51”.

I crocheted a total of 201 rows to reach this strap length.

Attach Buckle Strap:

Line up the strap so that it is behind the pocketed panel (right side facing you). You should see 3 ½” of the strap sticking out behind the right side of the panel. The top of the strap should be about even with the top of the pocket.

Two panels are now sewn onto the zipper. Photo shows where to line up the buckle strap.

Cut a piece of yarn about 24” long. Use the yarn and a yarn needle to stitch the strap to the pocketed panel. Insert the needle from the front, into the back few loops of the panel and through the entire strap. Come back up through the strap and into the next few back loops of the side of the panel. Repeat until the entire strap is secure along that side. Finish off. Secure both ends of the yarn piece with knots at the back of the panel and weave in your ends.

Yarn needle working from front to back, sewing the buckle strap to the back panel of crossbody bag.

Make sure strap is flush with the back of the panel and secure the strap on the left edge of the pocketed panel in the same manner.

Attach the Buckle

Insert the short end of your strap (from front to back) through one end of the non- adjustable side of the buckle. Pull the end back towards the strap (on the back side) so that it overlaps by about an inch. Use your tail if it is long enough or cut a piece of yarn to sew the strap in pace with a yarn needle. Sew up and down through both pieces of the strap. I went once across the end of the strap and then back across closer to the buckle to make sure everything was tight and secure.

Finish off and weave in the ends.

For the adjustable side of the buckle, insert the strap as you would on any adjustable buckle and pull through to the length you prefer. No sewing necessary for this side, as it is meant to be adjustable.

Side Panel

This is the narrow panel that runs between the two main panels to create the sides and bottom of the bag.

Measure from one end of the zipper, down the side of the bag, along the bottom and back up the other side to the other end of the zipper. This length was 17” for me. This is how long you want to make the side panel.

Row 1: Ch 5. Sc in the 2nd chain from the hook and in each chain across. (4)

Row 2: Ch 1. Turn. Sc in the same stitch and in each stitch across. (4)

Rows 3 – 66: Repeat Row 2 until you have the length you measured for this panel. (4)

Finish off, leaving a tail of 30”.

Attaching the Side Panel:

Line the side panel (start with the corner with 30” tail) up with the front, upper right corner of the main panel, just where the zipper ends.

Using the tail and a yarn needle, attach the left edge of the side panel to the right edge of the main front panel, just to the right of where the zipper ends (not including any extra flaps on the zipper, but where the actual zipper ends. The flaps will be tucked under later).
On the front panel edge, insert the yarn needle into a loop directly behind the slip stitch edging. When stitching through the side panel, go through just one loop from the edge of the panel.

Continue to whip stitch down the right side, across the bottom of the bag and back up the other side.

When you get to the zipper at the upper left corner, continue until you reach the very end of the zipper itself (exclude any flap of material after the zipper). If your side panel is too long at this point, you can fold any excess under.

Use the yarn needle to sew across the end of the side panel and secure the top of the side panel to the end of the zipper. Tie a knot at the back side of your work to secure and weave in your ends.

Cut a 30” piece of yarn. With your yarn needle and the yarn, attach the yarn close to where you tied off your last piece of yarn. Use the yarn needle to begin to whip stitch the other edge of the side panel to the back main panel of the bag. Do this in the same manner as the front panel. The only difference will be that, when you get to the strap, instead of whip stitching, work up and down through the strap to attach the two panels.

Work down the side, across the bottom and back up the other side. When you get back to where you started with the first edge of the front panel, use the last of the yarn to sew the top of the side panel to the end of the zipper. It may help to unzip the zipper to access the inside of the bag. Once secured with a few stitches, tie off and weave in your ends

Note: Feel free to sell finished products made with this pattern. If finished products are posted online, please include a reference/credit to this pattern. Do not distribute or claim the pattern as your own, or alter and use my photos to market your finished products.

More Crochet Patterns You Might Like:

Pin it for later:

Close up of crochet cross body bag being worn by someone in a blue sweatshirt.


Leave a Comment

« Cyber Monday Deals for Crocheters 2022
Crochet Coin Purse Pattern | Free Crochet Pattern »

Leave a Reply Cancel reply

Your email address will not be published. Required fields are marked *

Welcome!

Hi, I'm Esther. I love to make pretty things, especially if it involves crochet! This is where you'll find me posting projects, products, patterns and events related to my crafty obsessions! Read More…

You might also like

Crochet Planter Basket

My Favorite Finds This Week (1/29/20)

Crochet Circle Hot Pad

chunky beanie pattern crochet

Chunky Peek-A-Boo Beanie

Cyber Monday Deals for Crocheters 2022

Privacy & Cookies

This site uses cookies. By continuing to use this website, you agree to their use. For more details on cookies & privacy, see our privacy policy page.

Copyright © 2023 · Divine theme by Restored 316

Copyright © 2023 · Divine Theme on Genesis Framework · WordPress · Log in

We use cookies on our website to give you the most relevant experience by remembering your preferences and repeat visits. By clicking “Accept”, you consent to the use of ALL the cookies.
Do not sell my personal information.
Settings Accept
Privacy & Cookies Policy

Privacy Overview

This website uses cookies to improve your experience while you navigate through the website. Out of these cookies, the cookies that are categorized as necessary are stored on your browser as they are essential for the working of basic functionalities of the website. We also use third-party cookies that help us analyze and understand how you use this website. These cookies will be stored in your browser only with your consent. You also have the option to opt-out of these cookies. But opting out of some of these cookies may have an effect on your browsing experience.
Necessary
Always Enabled
Necessary cookies are absolutely essential for the website to function properly. These cookies ensure basic functionalities and security features of the website, anonymously.
CookieDurationDescription
apbct_cookies_testsessionCleanTalk sets this cookie to prevent spam on comments and forms and act as a complete anti-spam solution and firewall for the site.
apbct_page_hitssessionCleanTalk sets this cookie to prevent spam on comments and forms and act as a complete anti-spam solution and firewall for the site.
apbct_prev_referersessionFunctional cookie placed by CleanTalk Spam Protect to store referring IDs and prevent unauthorized spam from being sent from the website.
apbct_site_landing_tssessionCleanTalk sets this cookie to prevent spam on comments and forms and act as a complete anti-spam solution and firewall for the site.
apbct_site_referer3 daysThis cookie is placed by CleanTalk Spam Protect to prevent spam and to store the referrer page address which led the user to the website.
apbct_timestampsessionCleanTalk sets this cookie to prevent spam on comments and forms and act as a complete anti-spam solution and firewall for the site.
apbct_urls3 daysThis cookie is placed by CleanTalk Spam Protect to prevent spam and to store the addresses (urls) visited on the website.
AWSALBCORS6 days 23 hoursThis cookie is managed by Amazon Web Services and is used for load balancing.
CookieLawInfoConsent1 yearRecords the default button state of the corresponding category & the status of CCPA. It works only in coordination with the primary cookie.
ct_checkjssessionCleanTalk–Used to prevent spam on our comments and forms and acts as a complete anti-spam solution and firewall for this site.
ct_fkp_timestampsessionCleanTalk sets this cookie to prevent spam on the site's comments/forms, and to act as a complete anti-spam solution and firewall for the site.
ct_pointer_datasessionCleanTalk sets this cookie to prevent spam on the site's comments/forms, and to act as a complete anti-spam solution and firewall for the site.
ct_ps_timestampsessionCleanTalk sets this cookie to prevent spam on the site's comments/forms, and to act as a complete anti-spam solution and firewall for the site.
ct_sfw_pass_key1 monthCleanTalk sets this cookie to prevent spam on comments and forms and act as a complete anti-spam solution and firewall for the site.
ct_timezonesessionCleanTalk–Used to prevent spam on our comments and forms and acts as a complete anti-spam solution and firewall for this site.
viewed_cookie_policy1 yearThe cookie is set by the GDPR Cookie Consent plugin to store whether or not the user has consented to the use of cookies. It does not store any personal data.
Others
Other uncategorized cookies are those that are being analyzed and have not been classified into a category as yet.
CookieDurationDescription
__gpi1 year 24 daysNo description
apbct_headlesssessionNo description
apbct_pixel_urlsessionNo description
ct_checked_emailssessionNo description
ct_has_scrolledsessionNo description
ct_screen_infosessionNo description
debugneverNo description available.
euconsent-v21 yearNo description available.
fdcookietestsessionNo description
Advertisement
Advertisement cookies are used to provide visitors with relevant ads and marketing campaigns. These cookies track visitors across websites and collect information to provide customized ads.
CookieDurationDescription
test_cookie15 minutesThe test_cookie is set by doubleclick.net and is used to determine if the user's browser supports cookies.
VISITOR_INFO1_LIVE5 months 27 daysA cookie set by YouTube to measure bandwidth that determines whether the user gets the new or old player interface.
YSCsessionYSC cookie is set by Youtube and is used to track the views of embedded videos on Youtube pages.
yt-remote-connected-devicesneverYouTube sets this cookie to store the video preferences of the user using embedded YouTube video.
yt-remote-device-idneverYouTube sets this cookie to store the video preferences of the user using embedded YouTube video.
yt.innertube::nextIdneverThis cookie, set by YouTube, registers a unique ID to store data on what videos from YouTube the user has seen.
yt.innertube::requestsneverThis cookie, set by YouTube, registers a unique ID to store data on what videos from YouTube the user has seen.
Analytics
Analytical cookies are used to understand how visitors interact with the website. These cookies help provide information on metrics the number of visitors, bounce rate, traffic source, etc.
CookieDurationDescription
__gads1 year 24 daysThe __gads cookie, set by Google, is stored under DoubleClick domain and tracks the number of times users see an advert, measures the success of the campaign and calculates its revenue. This cookie can only be read from the domain they are set on and will not track any data while browsing through other sites.
_ga2 yearsThe _ga cookie, installed by Google Analytics, calculates visitor, session and campaign data and also keeps track of site usage for the site's analytics report. The cookie stores information anonymously and assigns a randomly generated number to recognize unique visitors.
_gat_gtag_UA_103575126_11 minuteSet by Google to distinguish users.
_gid1 dayInstalled by Google Analytics, _gid cookie stores information on how visitors use a website, while also creating an analytics report of the website's performance. Some of the data that are collected include the number of visitors, their source, and the pages they visit anonymously.
CONSENT2 yearsYouTube sets this cookie via embedded youtube-videos and registers anonymous statistical data.
Functional
Functional cookies help to perform certain functionalities like sharing the content of the website on social media platforms, collect feedbacks, and other third-party features.
CookieDurationDescription
__cf_bm30 minutesThis cookie, set by Cloudflare, is used to support Cloudflare Bot Management.
Performance
Performance cookies are used to understand and analyze the key performance indexes of the website which helps in delivering a better user experience for the visitors.
CookieDurationDescription
AWSALB6 days 23 hoursAWSALB is an application load balancer cookie set by Amazon Web Services to map the session to the target.
Save & Accept
Powered by CookieYes Logo