Checkout Content displays custom, informational content blocks inside checkout - trust badges, urgency messages, shipping-policy reminders, or personalized/time-of-day messaging - right when shoppers are deciding. It's fully customizable in content and style, and supports dynamic fields and an optional countdown timer.
Where to find it: Extensions → Add Extension → Checkout Content. Three tabs: Settings, Timer, Display Conditions.
What you can build with Checkout Content
Checkout Content is the catch-all informational block — trust badges are just the start. Common uses:
Trust badges - a row/column set like Secure Payment 🔒 · Fast Shipping 🚚 · Easy Returns ↩️.
Urgency messaging - pair with the Timer tab for a countdown ("Only {countdown} left to claim this offer!").
Shipping-availability notes - e.g. "This item ships from our [X] warehouse only," shown while the shopper enters their address.
Static shipping/offer messages - fixed copy such as "Orders over $65 get Free Tracked Shipping." (For a live "Spend $X more, get Free Shipping" progress bar that updates automatically, use the Checkout Upsell instead.)
Personalized / segmented notes - use dynamic fields (
{customer.first_name}, product name, etc.) to greet shoppers or show different copy to new vs. returning customers.Store or brand-level reviews & testimonials - feature quotes you provide. (For live, product-level star ratings synced from a review platform, use the Dynamic Reviews extension instead.)
Time-of-day or contextual messaging - use Display Conditions to show a message only at night, only above a cart value, only to a region, etc.
Step 1 - Settings
Internal Name (e.g. "Trust badges") - organizational only.
Component Placement - Standalone (its own block) or Inside Shipping Method (renders within a specific method; define which in the Online Store Editor).
Step 2 -Configure the block
Display Title - heading above the rows (e.g. "Why shop with us").
Style - Rows or Columns (toggle and watch the live Preview update).
Number of Rows - up to 4.
Border / Border Width / Corner Radius / Padding - styling for the whole block.
Each row (configured independently):
Block Type - sets the kind of content in the row. Dynamic supports personalization tokens (type
{for options like{customer.first_name},{product.name}).Title - optional row heading (e.g. "Secure Checkout").
Body - the row text; rich text + dynamic fields (type
{— e.g.{customer.first_name},{product.name}).Icon - pick or upload via Change (this is the badge icon — shield, lock, truck, etc.).
Image Width / Height - default 70×70, auto-maintains proportions.
For a classic trust-badge row: Style = Columns, 3–4 columns, each with a short Title + icon (e.g. Secure Payment 🔒 · Fast Shipping 🚚 · Easy Returns ↩️).
Step 3 - Timer (optional)
Enable Countdown Timer for urgency: Duration, Time Format (Digital/Compact), Placement (Badge / Inline Bar / Per Row), and Default / Low / Expired messages (each with Info/Success/Warning/Critical style; use {countdown}). Expiration Behavior: Hide Extension or Show Expired Message.
Step 4 - Display Conditions (optional)
"This Checkout Content Will Only Appear If…" → Add Rule Group (cart value, customer tags, destinations, device, product tag/type, time of day, SKU, etc.). Example: Time of day / is / Night → show a nighttime-only message. Empty = shows to everyone.
Step 5 - Save & install in Shopify
Save, then copy the Token for Shopify (checkout_content_…) from the Settings tab.
In Shopify: Settings → Checkout → Customize → Add block → PDQ Checkout content where you want it (commonly the shipping/information area). Paste the token into Enter desired custom checkout content token. If you set Inside Shipping Method, also fill Enter linked shipping method names (and descriptions), comma-separated. Save.
Full reference: Adding a PDQ Extension to your Shopify checkout.
Tips
Trust badges: keep icons consistent in size/style; use short 1–2 word titles - clutter erodes trust rather than building it.
Icon sizing: stick close to the 70×70 default and use similarly-proportioned images so badges line up (mismatched image ratios can render oddly).
Personalize with dynamic fields for non-badge content (e.g. "Hey {customer.first_name}, free returns on this order").
Use Display Conditions for contextual content (nighttime message, region-specific policy).
Mind Shopify's 3-block limit. Shopify allows only 3 app blocks per checkout section (e.g. under Shipping Methods). If a section is full - including any hidden/leftover blocks - a new Checkout Content or other extension won't fit. Remove unused blocks or choose a different placement (e.g. near the Pay Now button).


