Pricing and Inventory Management
This guide covers bulk editing of pricing and inventory fields, including best practices for price updates, inventory synchronization, and maintaining accurate stock levels across your product catalog.
Pricing Fields
Price
The regular selling price of your products.
Field Details:
- Type: Decimal number
- Currency: Based on your store's default currency
- Validation: Must be positive, cannot be negative
- Impact: Affects customer pricing, profit calculations
Common Operations:
Fixed Value: 29.99
Formula: price * 1.15 // 15% increase
Find/Replace: Find "19.99" Replace "24.99"
Conditional: IF product_type = "Premium" THEN price * 1.2
Compare At Price
The original or reference price, typically used to show discounts.
Field Details:
- Type: Decimal number (optional)
- Purpose: Display crossed-out "was" price
- Best Practice: Should be higher than regular price
- SEO Impact: Helps with sale/discount visibility
Common Operations:
Save Original: compare_at_price = price // Before applying discount
Clear Sales: compare_at_price = null // Remove sale pricing
Percentage Above: price * 1.25 // 25% higher reference
Cost Per Item
Your cost basis for the product, used for profit calculations.
Field Details:
- Type: Decimal number
- Visibility: Internal only, not shown to customers
- Purpose: Profit margin calculations, reporting
- Currency: Same as store currency
Common Operations:
Fixed Cost: 15.50
Formula: price * 0.4 // 40% of selling price
Import: Update from supplier CSV
Markup Calculation: cost_per_item * 2.5 // 150% markup
Inventory Fields
Inventory Quantity
Current stock levels for each variant.
Field Details:
- Type: Integer number
- Tracking: Only works if inventory tracking is enabled
- Validation: Cannot be negative
- Real-time: Updates immediately affect availability
Common Operations:
Set Stock: 100
Adjust: inventory_quantity + 50 // Add 50 units
Sync: Import from warehouse CSV
Reset: 0 // Clear all inventory
Inventory Tracking
Controls whether Shopify tracks stock levels.
Field Details:
- Type: Boolean (Enabled/Disabled)
- Default: Usually enabled for physical products
- Impact: Affects inventory quantity functionality
- Digital Products: Often disabled
When to Enable:
- Physical products with limited stock
- Products requiring stock management
- Items with supplier inventory tracking
When to Disable:
- Digital downloads
- Services
- Made-to-order products
- Unlimited stock items
Inventory Policy
Determines what happens when inventory reaches zero.
Options:
- Deny - Stop selling when out of stock
- Continue - Allow overselling
Field Details:
- Type: Selection (Deny/Continue)
- Customer Impact: Affects checkout availability
- Business Impact: Prevents overselling vs. lost sales
Best Practices:
Physical Products: "Deny" (prevent overselling)
Digital Products: "Continue" (unlimited availability)
Pre-orders: "Continue" (allow advance orders)
Custom Items: "Continue" (made to order)
Bulk Pricing Strategies
Percentage-Based Updates
Apply consistent percentage changes across products:
Price Increases:
Formula: price * 1.10 // 10% increase
Filter: Product Type = "Electronics"
Timing: Beginning of fiscal year
Sale Pricing:
Step 1: compare_at_price = price // Save original
Step 2: price = price * 0.8 // 20% off
Filter: Tags contains "sale-eligible"
Seasonal Adjustments:
Winter Sale: price * 0.7 // 30% off
Spring Cleanup: price * 0.5 // 50% off
Holiday Premium: price * 1.15 // 15% increase
Tiered Pricing
Set different prices based on product characteristics:
By Product Type:
IF product_type = "Premium" THEN price * 1.5
IF product_type = "Standard" THEN price * 1.2
IF product_type = "Basic" THEN price * 1.0
By Inventory Level:
IF inventory_quantity > 100 THEN price * 0.95 // Volume discount
IF inventory_quantity < 10 THEN price * 1.1 // Scarcity premium
By Vendor:
IF vendor = "Premium Brand" THEN cost_per_item * 3.0
IF vendor = "Standard Brand" THEN cost_per_item * 2.5
IF vendor = "Budget Brand" THEN cost_per_item * 2.0
Inventory Management Workflows
Daily Inventory Sync
Synchronize with external inventory systems:
Setup:
- Export current inventory levels
- Compare with warehouse data
- Identify discrepancies
- Bulk update quantities
Automation:
Schedule: Daily at 2:00 AM
Filter: Inventory tracking = "Enabled"
Action: Import CSV with new quantities
Notification: Email summary of changes
Low Stock Management
Identify and manage products running low:
Low Stock Identification:
Filter: inventory_quantity < 10
AND status = "Active"
AND inventory_tracking = "Enabled"
Action: Add "low-stock" tag
Reorder Point Management:
Filter: inventory_quantity < reorder_point
Action: Add "needs-reorder" tag
Notification: Send to purchasing team
Seasonal Inventory Prep
Prepare inventory for seasonal changes:
Pre-Season Buildup:
Filter: product_type = "Winter Clothing"
AND created_at < "2024-09-01"
Action: inventory_quantity = projected_demand
Post-Season Clearance:
Filter: tags contains "winter-2024"
AND inventory_quantity > 0
Action: price = price * 0.6 // 40% off clearance
Advanced Pricing Techniques
Dynamic Pricing Formulas
Create sophisticated pricing rules:
Margin-Based Pricing:
Formula: cost_per_item * (1 + target_margin)
Example: cost_per_item * 2.5 // 150% markup
Competition-Based Pricing:
Formula: competitor_price * 0.95 // 5% below competition
Condition: IF competitor_price > 0
Inventory-Based Pricing:
Formula: base_price * inventory_multiplier
Where: inventory_multiplier = 1 + (100 - inventory_quantity) / 1000
Price Optimization
Optimize prices for maximum profitability:
A/B Testing Setup:
Group A: price = base_price
Group B: price = base_price * 1.1
Filter: Split by product ID modulo 2
Demand-Based Adjustments:
High Demand: price = price * 1.05 // 5% increase
Low Demand: price = price * 0.95 // 5% decrease
Error Prevention
Validation Rules
Implement checks to prevent pricing errors:
Price Validation:
- Price must be greater than cost
- Compare-at-price must be greater than price
- Prices must be reasonable (not $0.01 or $999,999)
Inventory Validation:
- Quantities must be non-negative
- Tracking must be enabled for quantity updates
- Reasonable stock levels (not 999,999 units)
Safety Measures
Protect against accidental changes:
Preview Changes:
- Always preview before applying
- Check sample products manually
- Verify formulas with test data
Backup Strategy:
- Export current prices before changes
- Save original values in custom fields
- Use job history for rollback capability
Gradual Rollout:
- Test with small product subset first
- Apply to one product type at a time
- Monitor customer response and sales impact
Common Use Cases
Supplier Price Updates
Handle regular supplier cost changes:
1. Import new cost data from supplier
2. Calculate new selling prices with target margin
3. Update cost_per_item and price fields
4. Maintain minimum price thresholds
Promotional Campaigns
Set up time-limited promotions:
Start of Sale:
- compare_at_price = price
- price = price * 0.8
- tags += "flash-sale"
End of Sale:
- price = compare_at_price
- compare_at_price = null
- tags -= "flash-sale"
Inventory Liquidation
Clear excess inventory:
Filter: inventory_quantity > 50
AND last_sold > 90 days ago
Actions:
- price = cost_per_item * 1.1 // Minimal markup
- tags += "clearance"
Best Practices
Pricing Strategy
- Maintain consistent profit margins
- Consider psychological pricing ($9.99 vs $10.00)
- Test price changes on small segments first
- Monitor competitor pricing regularly
Inventory Management
- Set appropriate reorder points
- Use safety stock for popular items
- Regular cycle counting and adjustments
- Coordinate with fulfillment team
Data Quality
- Validate all price changes before applying
- Maintain accurate cost data
- Regular audits of pricing and inventory
- Document all bulk changes for accountability
Next Steps
- Learn about Product Information field editing
- Explore SEO Metadata optimization
- Set up Scheduled Jobs for regular updates