Bulk Recipe Import via CSV in Recipe Kit for Shopify
Want to migrate recipes from WordPress or another platform into your Shopify store?
Recipe Kit's Bulk CSV Import lets you upload hundreds of recipes at once—saving hours of manual entry.
Note: This feature is in early release. If you have questions or run into issues, email help@recipekit.app and we'll help you troubleshoot your CSV.
🚦 Quick Start Checklist
- Download the CSV Template
- Use Google Sheets, Excel, or your favorite editor to open the template
- Download the CSV file here.
The first row contains all supported fields (see below)
Fill Out Your Recipes
- Use the sample rows as a guide
Enter as much info as possible to maximize Recipe Kit's features
Test with 1–2 Recipes First
- Upload a small sample to ensure formatting is correct before importing your full list
📋 CSV Field Reference
Below are the fields you'll see in the template, with notes on formatting and special options.
Field Name | Description & Format |
---|---|
recipe_title | (Required) The name of your recipe |
recipe_description | A short description or intro for the recipe |
recipe_image | Public image URL (e.g., https://example.com/image.jpg). Only one image per recipe |
blog_id | Shopify Blog ID (see below for how to find it) |
article_id | (Optional) Shopify Article ID to attach the recipe to an existing post. Leave blank to create new |
recipe_author | Name of the recipe's author |
recipe_category | Category or type (e.g., Dessert, Main Course) |
serving_size | e.g., "4 servings (100g each)" |
cook_time | Number of minutes (e.g., 25) |
prep_time | Number of minutes (e.g., 15) |
enable_rating | TRUE or FALSE (enables/disables star ratings for this recipe) |
recipe_note | Any extra notes for the recipe |
recipe_video | Full YouTube URL (e.g., https://www.youtube.com/watch?v=xxxx) |
recipe_tags | Tags/keywords, separated by semicolons: Vegan;Dessert;Pie |
recipe_ingredients | Ingredients, separated by semicolons: 1 cup flour;2 eggs . Use HEAD: for group headings |
recipe_directions | Directions, separated by semicolons. Use HEAD: for group headings |
nutrition_data | Nutrition info, e.g.: Carbs: 24;Fat: 12;Protein: 5 . See below for accepted fields |
custom_field_1_name | Name for your first custom field (e.g., "Difficulty") |
custom_field_1_value | Value for your first custom field (e.g., "Easy") |
custom_field_2_name | Name for your second custom field (e.g., "Cuisine") |
custom_field_2_value | Value for your second custom field (e.g., "American") |
label_layout | Label layout type (e.g., "minimal", "horizontal", "vertical") |
nutrition_serving_size | e.g., "100g", "1 slice" |
calories | Number of calories (numeric). If both this and nutrition_data's "Calories" are present, this wins |
update_blog_post_tags | TRUE or FALSE. If TRUE, recipe tags will be added to the blog post's tags |
update_blog_post_image | TRUE or FALSE. If TRUE, recipe image will be set as the blog post's featured image |
status | 1 = published, 0 = hidden. If blank, defaults to 1 (published) |
🏷️ Special Field Details
Status
- 1 = Publish the recipe/article immediately
- 0 = Keep the recipe/article hidden after import
- If left blank, Recipe Kit will set it to 1 (published)
Recipe Image
- Must be a public URL
- No private Google Drive/Dropbox links
- Only one image per recipe
Blog ID
Find this in your Shopify Admin:
- Go to Online Store > Blog Posts > Manage Blogs
- The URL will look like:
https://admin.shopify.com/store/your-store-name/blogs/77201539185
- The number at the end is your blog_id
Article ID
- (Optional) Attach the recipe to an existing blog post
- Find this in the article's URL:
https://admin.shopify.com/store/your-store-name/articles/558726021233
- The number at the end is your article_id
Recipe Tags
Separate multiple tags with a semicolon:
Vegan;Dessert;Pie;Summer
Recipe Ingredients & Directions
- Separate each entry with a semicolon:
1 cup flour;2 eggs;1 tsp salt
- To add group headings, prefix with
HEAD:
:
HEAD: Dough;1 cup flour;2 eggs;HEAD: Filling;1 cup berries
Custom Fields - New Enhanced Format
Recipe Kit now supports separate name and value columns for custom fields, giving you more flexibility:
New Format (Recommended):
- Use
custom_field_1_name
andcustom_field_1_value
for the first custom field - Use
custom_field_2_name
andcustom_field_2_value
for the second custom field
Example:
custom_field_1_name: Difficulty custom_field_1_value: Easy custom_field_2_name: Cuisine custom_field_2_value: American
Boolean Fields (TRUE/FALSE)
The following fields accept boolean values and support multiple formats:
enable_rating
update_blog_post_tags
update_blog_post_image
Accepted TRUE values: TRUE
, true
, 1
, yes
Accepted FALSE values: FALSE
, false
, 0
, no
Nutrition Data
Format: Field: Value;Field: Value;...
Example: Carbs: 24;Fat: 12;Protein: 5
Accepted fields:
- Carbs (grams)
- Cholesterol (milligrams)
- Fat (grams)
- Fiber (grams)
- Protein (grams)
- Saturated Fat (grams)
- Sodium (milligrams)
- Sugar (grams)
- Trans Fat (grams)
- Unsaturated Fat (grams)
🛠️ Importing Your CSV
- Open Recipe Kit in Shopify
- Go to App Settings
- Find the Bulk Import Recipes section
- Upload your completed CSV file
- Click Upload CSV File
Tip: Large imports may take several minutes. You can track progress in the app.
🧑💻 Troubleshooting
- Errors on upload? Don't worry! Email your CSV to help@recipekit.app and we'll help you resolve any issues
- Start with a small test: Import 1–2 recipes first to confirm formatting before uploading your full list
- Boolean fields not working? Make sure you're using
TRUE
/FALSE
(notTrue
/False
or other variations) - Custom fields not showing up? Try the new separate name/value format for better results
💡 Pro Tips
- Leave
article_id
blank to create new blog posts for each recipe - Set
update_blog_post_tags
andupdate_blog_post_image
toTRUE
to sync tags and images with your Shopify blog posts - Use the sample rows in the template as a reference for formatting
- For custom fields, use the new separate name/value columns for maximum flexibility
- Test boolean fields with a small sample first to ensure they're formatted correctly
Questions?
We're here to help: help@recipekit.app