Common number field use cases
- Jersey number: 1-99, sports apparel
- Year: Established year for family signs (1990-2026), anniversary year, class year
- Age: Birthday products (1-100)
- Team number: Player number on custom uniforms
- Fabric length (yards): Custom fabric orders (0.5, 1, 2, 5, 10)
- Quantity per pack: 6-pack / 12-pack / 24-pack for bulk custom
- Guest count for events: 25-200 for catering/invitation orders
Setup with Print It My Way
- Install Print It My Way (Free plan supports 1 number field)
- Dashboard → New Personalizer → drag in Number field
- Configure:
- Label: "Jersey number" or "Year"
- Min: 1 (jersey) or 1900 (year)
- Max: 99 (jersey) or 2100 (year)
- Increment: 1 (whole numbers) or 0.5 (fabric yards)
- Required: Yes / No
- Optional: Cart Transform per-unit fee (e.g. fabric per yard)
- Attach to product
Native theme code (free)
<label for="jersey-number">
Jersey number (1-99, required)
</label>
<input
type="number"
id="jersey-number"
name="properties[Jersey Number]"
min="1"
max="99"
step="1"
inputmode="numeric"
required
/>
inputmode="numeric" triggers mobile numeric keyboard (faster input than text keyboard). Native browser number input validates min/max.
Mobile numeric keyboard
Critical for good mobile UX. HTML5 type="number" triggers numeric keyboard on iOS + Android automatically. Add inputmode="numeric" for explicit hint.
Print It My Way sets this automatically on Number fields.
Min/max validation
Prevent invalid input:
- Jersey number: min 1, max 99 (or 0-99 depending on sport)
- Year: min 1900, max current year
- Age: min 1, max 120
- Fabric yards: min 0.5, max 50 (or your stock)
Browser + app enforce. Customer can't submit invalid range.
Decimal precision
Some use cases need decimals:
- Fabric length: 0.5 yard increments (
step="0.5") - Weight: 0.25 lb increments
- Age: whole years only (
step="1")
Configure step attribute (HTML) or Print It My Way "Increment" setting.
Per-unit pricing via Cart Transform
Number field can drive price:
- Fabric per yard: base $12/yard, customer enters 5 yards → $60 total via Cart Transform
- Custom prints per unit: $10 per print, customer enters 25 units
Cart Transform reads number value + multiplies by unit price. Print It My Way Basic supports.
Number vs quantity — different concepts
Don't confuse:
- Number field: per-unit customization data (jersey number, year on shirt)
- Quantity: how many units customer orders (standard Shopify cart quantity)
A customer buying 5 jerseys each with different number = 5 line items (one per jersey) + jersey number field per line + quantity 1 per line.
Frequently asked questions
How to add number field to Shopify?
Personalizer app (Print It My Way, Bold). Add Number field with min/max + optional increment.
Show numeric keyboard on mobile?
inputmode="numeric" attribute. Print It My Way sets automatically.
Validate number range?
min + max HTML attributes. Browser enforces. Personalizer app adds app-side validation for safety.
Allow decimals in number field?
step="0.5" for half-increment. Configure per use case (fabric length, weight).
Per-unit pricing via number field?
Cart Transform multiplies number value × unit price. Fabric per yard, custom prints per unit.
Number vs quantity difference?
Number = per-unit customization (jersey number). Quantity = how many units. Different concepts, different fields.
Max number of digits?
Depends on use case. Jersey 2 digits (1-99). Year 4 digits. Guest count 3-4 digits.
Best app for number fields?
Print It My Way (Free plan includes). Bold Product Options. Both support Cart Transform per-unit pricing.
Cart display for number field?
Personalizer stores as line-item property. Cart-item.liquid displays "Jersey Number: 23" automatically.
Prevent non-numeric input?
HTML5 type="number" rejects non-numeric. Personalizer app validates additionally.
Related setup guides
Number field on Shopify — free
Print It My Way Free plan includes number field with min/max validation + Cart Transform per-unit pricing.
Install Print It My Way