{
 "schema_version": "1.0",
 "id": "loyalino",
 "name": "Loyalino",
 "research_status": "researched",
 "vendor_domain": "loyalino.io",
 "category": "E-commerce",
 "task": "E-commerce growth",
 "summary": "Shopify loyalty app from OkayScale: points on orders and actions, VIP tiers by points or spend, referrals with dual-sided rewards, shown in a floating widget, the cart, product pages, customer accounts, a standalone storefront page and Shopify POS. Runs in the EU, ships in eight languages. Launched June 2026, no reviews yet.",
 "best_for": "shopify stores whose loyalty orders sit comfortably below a plan ceiling and who want the whole program - points, VIP tiers, referrals, the widget, a customer-accounts loyalty page and eight built-in languages - on a free tier that withholds almost nothing, with the developer reachable directly rather than through a help centre",
 "skip_if": "your monthly order count swings or runs close to a plan ceiling: at the limit the program pauses for the rest of the calendar month instead of billing you overage. Skip it too if you need Shopify POS, the REST API or email from your own sending domain, because all three start at $29 a month - and if you want a loyalty app with a track record, because this one has no reviews at all",
 "honest_knock": "Reach your plan's order limit and the program does not cost more, it stops. Their FAQ is explicit about it: at a finite plan limit the loyalty program pauses until the next calendar month or an eligible upgrade, and there are no per-order overage fees. For most metered apps that would be a mercy. For a loyalty program it means points quietly stop accruing for your customers partway through your busiest month, which is exactly when you least want it, and the free plan's ceiling of 200 orders is reached by a store doing seven orders a day. The ladder pushes the same direction: on their published rates the price per loyalty order gets worse with every step up rather than better - about $0.058 an order at Starter's 500, $0.065 at Essential's 2,000 and $0.071 at Growth's 7,000, which is our arithmetic on their figures at each plan's ceiling. And the thing they sell hardest is the thing you cannot check from outside: one-to-one support on every plan including the free one, and custom development included on the paid ones, from the people who wrote the code. That is a real differentiator if it holds. The app launched on 16 June 2026 and carries no reviews at all, so nothing independent stands behind it yet.",
 "pricing": {
  "status": "public",
  "entry_price": "$29",
  "entry_price_terms": "a month or $290 a year (up to 500 orders)",
  "from_price_usd_month": null,
  "plans": [
   {
    "name": "Free",
    "price": "$0",
    "includes": "up to 200 loyalty orders a month"
   },
   {
    "name": "Starter",
    "price": "$29 a month or $290 a year",
    "includes": "up to 500 loyalty orders"
   },
   {
    "name": "Essential",
    "price": "$129 or $1,290",
    "includes": "up to 2,000 loyalty orders"
   },
   {
    "name": "Growth",
    "price": "$499 or $4,990",
    "includes": "up to 7,000 loyalty orders"
   },
   {
    "name": "Enterprise",
    "price": "$999 or $9,990",
    "includes": "unlimited orders with no cap"
   }
  ],
  "plans_source": "summarised from pricing.notes; every plan name and amount appears verbatim in those notes",
  "notes": "(prices read 22 September 2026 on apps.shopify.com/loyalino-loyalty-rewards and on loyalino.io/pricing) Billed in USD through Shopify and metered by monthly loyalty orders rather than by features. The vendor puts it in those words on its own pricing page - you pay for volume, not for features - and every paid plan carries the same paid feature set. Free: $0 for up to 200 loyalty orders a month. Starter: $29 a month or $290 a year for up to 500. Essential: $129 or $1,290 for up to 2,000. Growth: $499 or $4,990 for up to 7,000. Enterprise: $999 or $9,990 for unlimited orders with no cap. Annual billing works out at ten monthly payments, which is where the 17% they advertise comes from. Their FAQ defines a monthly loyalty order as one distinct Shopify order that creates a loyalty-points transaction in that calendar month, counted once however many transactions it generates. What the paid tiers add on top of the free plan is the standalone storefront loyalty page, earning and redemption in Shopify POS, sending from your own email domain, and the REST API, webhooks and MCP server. Points, the reward types, VIP tiers, referrals, the floating widget, the product-page and cart placements, the customer-accounts loyalty page, eight languages and eight loyalty emails are all on the free plan. Two terms to read before you count on the trial: a store gets up to 14 trial days, days used in the last 180 count against that, and a store billed for a Loyalino plan in the last 180 days gets no new trial at all. The 30-day money-back guarantee runs from the day your first paid plan activates, trial included, and upgrading, downgrading, renewing, cancelling or reinstalling does not restart that window. Asking for the refund does not cancel the subscription - that is a separate step.",
  "verified_at": "2026-10-14",
  "source_url": "https://loyalino.io/pricing",
  "schema_offer": {
   "price": 29.0,
   "currency": "USD",
   "description": "Starter, per month, billed month-to-month. From our pricing notes: “Starter: $29 a month or $290 a year for up to 500” Read on the vendor's own pricing page on 2026-10-14.",
   "page": "https://marketingandsalessoftware.com/loyalino-review.html"
  },
  "source_quotes": null,
  "recent_change": null,
  "price_history": null
 },
 "free_plan": true,
 "free_plan_evidence": "Free: $0 for up to 200 loyalty orders a month.",
 "cost_traps": [
  {
   "id": "usage_metered",
   "label": "Usage-metered",
   "evidence": "(prices read 22 September 2026 on apps.shopify.com/loyalino-loyalty-rewards and on loyalino.io/pricing) Billed in USD through Shopify and metered by monthly loyalty orders rather than by features.",
   "verified_at": "2026-10-14",
   "source_url": "https://loyalino.io/pricing"
  },
  {
   "id": "annual_lock",
   "label": "Annual commitment",
   "evidence": "Annual billing works out at ten monthly payments, which is where the 17% they advertise comes from.",
   "verified_at": "2026-10-14",
   "source_url": "https://loyalino.io/pricing"
  }
 ],
 "compare_with": {
  "name": "Essential Loyalty",
  "why": "Both are Shopify loyalty apps that leave VIP tiers and referrals on the free plan and bill you by orders rather than by feature, so the comparison turns on what each one counts. Essential Loyalty meters loyalty-influenced orders; Loyalino counts any distinct order that creates a points transaction that month, which catches the customer who merely earns points on a purchase they were going to make anyway. Worth knowing before you read that as a verdict: neither vendor publishes how the other's definition behaves in practice, so check your own first full month against the counter rather than against the wording. Where Loyalino is clearly ahead is in what it tells you up front - the full ladder to $999, the cap behaviour, the trial arithmetic and EU data residency are all written down. Where it is clearly behind is evidence: zero reviews since launching in June 2026."
 },
 "links": {
  "record": "https://aibuildermarketplace.com/api/v1/products/loyalino.json",
  "review": "https://marketingandsalessoftware.com/loyalino-review.html",
  "marketplace": "https://aibuildermarketplace.com/marketplace/loyalino/",
  "vendor_site": "https://loyalino.io"
 },
 "purchase": {
  "seller": "the vendor",
  "how": "AIBuilder Marketplace does not sell this software. Sign up, start a trial or buy on the vendor's site.",
  "handoff_url": "https://loyalino.io/",
  "affiliate": false,
  "disclosure": "Where purchase.affiliate is true, purchase.handoff_url is an affiliate link: AIBuilder Marketplace may earn a commission at no extra cost to the buyer. Commission never changes what a record says, and products are not ranked by commission. Where it is false the link is the vendor's plain site."
 },
 "provenance": {
  "research": "hand-researched dossier, read on the vendor's own pages",
  "researched_since": "2026-07",
  "method": "https://aibuildermarketplace.com/how-we-review/",
  "license": "CC BY 4.0. Credit 'AIBuilder Marketplace' with a link to https://aibuildermarketplace.com/atlas/.",
  "note": "A rebuild is not a new measurement: pricing.verified_at is the date that matters."
 },
 "cost": {
  "status": "available",
  "engine": "https://aibuildermarketplace.com/agents/#cost",
  "rules": {
   "currency": "USD",
   "unit": "loyalty order a month",
   "axis": "orders_per_month",
   "plans": [
    {
     "id": "free",
     "name": "Free",
     "model": "free",
     "max_units": 200,
     "evidence": "Free: $0 for up to 200 loyalty orders a month"
    },
    {
     "id": "starter",
     "name": "Starter",
     "model": "flat",
     "max_units": 500,
     "monthly": 29,
     "annual_year": 290,
     "evidence": "Starter: $29 a month or $290 a year for up to 500"
    },
    {
     "id": "essential",
     "name": "Essential",
     "model": "flat",
     "max_units": 2000,
     "monthly": 129,
     "annual_year": 1290,
     "evidence": "Essential: $129 or $1,290 for up to 2,000"
    },
    {
     "id": "growth",
     "name": "Growth",
     "model": "flat",
     "max_units": 7000,
     "monthly": 499,
     "annual_year": 4990,
     "evidence": "Growth: $499 or $4,990 for up to 7,000"
    },
    {
     "id": "enterprise",
     "name": "Enterprise",
     "model": "flat",
     "monthly": 999,
     "annual_year": 9990,
     "evidence": "Enterprise: $999 or $9,990 for unlimited orders with no cap"
    }
   ],
   "notes": [
    "A monthly loyalty order is one distinct Shopify order that creates a loyalty-points transaction in that calendar month, counted once.",
    "Every paid plan carries the same paid feature set; the plan is chosen by volume, not by features.",
    "At a finite plan limit the program pauses until the next calendar month or an upgrade; there is no per-order overage."
   ],
   "rules_verified_at": "2026-10-14"
  },
  "growth": {
   "annual": {
    "product_id": "loyalino",
    "currency": "USD",
    "axis": "orders_per_month",
    "unit": "loyalty order a month",
    "billing": "annual",
    "rows": [
     {
      "units": 0,
      "cheapest_plan": "free",
      "cheapest_plan_name": "Free",
      "total_month": 0.0,
      "billed": {
       "amount": 0.0,
       "every": "month"
      },
      "ranges": [],
      "per_plan": {
       "free": 0.0,
       "starter": 24.17,
       "essential": 107.5,
       "growth": 415.83,
       "enterprise": 832.5
      }
     },
     {
      "units": 50,
      "cheapest_plan": "free",
      "cheapest_plan_name": "Free",
      "total_month": 0.0,
      "billed": {
       "amount": 0.0,
       "every": "month"
      },
      "ranges": [],
      "per_plan": {
       "free": 0.0,
       "starter": 24.17,
       "essential": 107.5,
       "growth": 415.83,
       "enterprise": 832.5
      }
     },
     {
      "units": 300,
      "cheapest_plan": "starter",
      "cheapest_plan_name": "Starter",
      "total_month": 24.17,
      "billed": {
       "amount": 290.0,
       "every": "year"
      },
      "ranges": [],
      "per_plan": {
       "free": "not_eligible",
       "starter": 24.17,
       "essential": 107.5,
       "growth": 415.83,
       "enterprise": 832.5
      }
     },
     {
      "units": 700,
      "cheapest_plan": "essential",
      "cheapest_plan_name": "Essential",
      "total_month": 107.5,
      "billed": {
       "amount": 1290.0,
       "every": "year"
      },
      "ranges": [],
      "per_plan": {
       "free": "not_eligible",
       "starter": "not_eligible",
       "essential": 107.5,
       "growth": 415.83,
       "enterprise": 832.5
      }
     },
     {
      "units": 1000,
      "cheapest_plan": "essential",
      "cheapest_plan_name": "Essential",
      "total_month": 107.5,
      "billed": {
       "amount": 1290.0,
       "every": "year"
      },
      "ranges": [],
      "per_plan": {
       "free": "not_eligible",
       "starter": "not_eligible",
       "essential": 107.5,
       "growth": 415.83,
       "enterprise": 832.5
      }
     },
     {
      "units": 2000,
      "cheapest_plan": "essential",
      "cheapest_plan_name": "Essential",
      "total_month": 107.5,
      "billed": {
       "amount": 1290.0,
       "every": "year"
      },
      "ranges": [],
      "per_plan": {
       "free": "not_eligible",
       "starter": "not_eligible",
       "essential": 107.5,
       "growth": 415.83,
       "enterprise": 832.5
      }
     },
     {
      "units": 5000,
      "cheapest_plan": "growth",
      "cheapest_plan_name": "Growth",
      "total_month": 415.83,
      "billed": {
       "amount": 4990.0,
       "every": "year"
      },
      "ranges": [],
      "per_plan": {
       "free": "not_eligible",
       "starter": "not_eligible",
       "essential": "not_eligible",
       "growth": 415.83,
       "enterprise": 832.5
      }
     },
     {
      "units": 10000,
      "cheapest_plan": "enterprise",
      "cheapest_plan_name": "Enterprise",
      "total_month": 832.5,
      "billed": {
       "amount": 9990.0,
       "every": "year"
      },
      "ranges": [],
      "per_plan": {
       "free": "not_eligible",
       "starter": "not_eligible",
       "essential": "not_eligible",
       "growth": "not_eligible",
       "enterprise": 832.5
      }
     },
     {
      "units": 20000,
      "cheapest_plan": "enterprise",
      "cheapest_plan_name": "Enterprise",
      "total_month": 832.5,
      "billed": {
       "amount": 9990.0,
       "every": "year"
      },
      "ranges": [],
      "per_plan": {
       "free": "not_eligible",
       "starter": "not_eligible",
       "essential": "not_eligible",
       "growth": "not_eligible",
       "enterprise": 832.5
      }
     },
     {
      "units": 50000,
      "cheapest_plan": "enterprise",
      "cheapest_plan_name": "Enterprise",
      "total_month": 832.5,
      "billed": {
       "amount": 9990.0,
       "every": "year"
      },
      "ranges": [],
      "per_plan": {
       "free": "not_eligible",
       "starter": "not_eligible",
       "essential": "not_eligible",
       "growth": "not_eligible",
       "enterprise": 832.5
      }
     }
    ],
    "switch_points": [
     {
      "from_units": 50,
      "to_units": 300,
      "from_plan": "free",
      "to_plan": "starter",
      "from_plan_name": "Free",
      "to_plan_name": "Starter"
     },
     {
      "from_units": 300,
      "to_units": 700,
      "from_plan": "starter",
      "to_plan": "essential",
      "from_plan_name": "Starter",
      "to_plan_name": "Essential"
     },
     {
      "from_units": 2000,
      "to_units": 5000,
      "from_plan": "essential",
      "to_plan": "growth",
      "from_plan_name": "Essential",
      "to_plan_name": "Growth"
     },
     {
      "from_units": 5000,
      "to_units": 10000,
      "from_plan": "growth",
      "to_plan": "enterprise",
      "from_plan_name": "Growth",
      "to_plan_name": "Enterprise"
     }
    ],
    "conflicts": [],
    "unknowns": []
   },
   "monthly": {
    "product_id": "loyalino",
    "currency": "USD",
    "axis": "orders_per_month",
    "unit": "loyalty order a month",
    "billing": "monthly",
    "rows": [
     {
      "units": 0,
      "cheapest_plan": "free",
      "cheapest_plan_name": "Free",
      "total_month": 0.0,
      "billed": {
       "amount": 0.0,
       "every": "month"
      },
      "ranges": [],
      "per_plan": {
       "free": 0.0,
       "starter": 29.0,
       "essential": 129.0,
       "growth": 499.0,
       "enterprise": 999.0
      }
     },
     {
      "units": 50,
      "cheapest_plan": "free",
      "cheapest_plan_name": "Free",
      "total_month": 0.0,
      "billed": {
       "amount": 0.0,
       "every": "month"
      },
      "ranges": [],
      "per_plan": {
       "free": 0.0,
       "starter": 29.0,
       "essential": 129.0,
       "growth": 499.0,
       "enterprise": 999.0
      }
     },
     {
      "units": 300,
      "cheapest_plan": "starter",
      "cheapest_plan_name": "Starter",
      "total_month": 29.0,
      "billed": {
       "amount": 29.0,
       "every": "month"
      },
      "ranges": [],
      "per_plan": {
       "free": "not_eligible",
       "starter": 29.0,
       "essential": 129.0,
       "growth": 499.0,
       "enterprise": 999.0
      }
     },
     {
      "units": 700,
      "cheapest_plan": "essential",
      "cheapest_plan_name": "Essential",
      "total_month": 129.0,
      "billed": {
       "amount": 129.0,
       "every": "month"
      },
      "ranges": [],
      "per_plan": {
       "free": "not_eligible",
       "starter": "not_eligible",
       "essential": 129.0,
       "growth": 499.0,
       "enterprise": 999.0
      }
     },
     {
      "units": 1000,
      "cheapest_plan": "essential",
      "cheapest_plan_name": "Essential",
      "total_month": 129.0,
      "billed": {
       "amount": 129.0,
       "every": "month"
      },
      "ranges": [],
      "per_plan": {
       "free": "not_eligible",
       "starter": "not_eligible",
       "essential": 129.0,
       "growth": 499.0,
       "enterprise": 999.0
      }
     },
     {
      "units": 2000,
      "cheapest_plan": "essential",
      "cheapest_plan_name": "Essential",
      "total_month": 129.0,
      "billed": {
       "amount": 129.0,
       "every": "month"
      },
      "ranges": [],
      "per_plan": {
       "free": "not_eligible",
       "starter": "not_eligible",
       "essential": 129.0,
       "growth": 499.0,
       "enterprise": 999.0
      }
     },
     {
      "units": 5000,
      "cheapest_plan": "growth",
      "cheapest_plan_name": "Growth",
      "total_month": 499.0,
      "billed": {
       "amount": 499.0,
       "every": "month"
      },
      "ranges": [],
      "per_plan": {
       "free": "not_eligible",
       "starter": "not_eligible",
       "essential": "not_eligible",
       "growth": 499.0,
       "enterprise": 999.0
      }
     },
     {
      "units": 10000,
      "cheapest_plan": "enterprise",
      "cheapest_plan_name": "Enterprise",
      "total_month": 999.0,
      "billed": {
       "amount": 999.0,
       "every": "month"
      },
      "ranges": [],
      "per_plan": {
       "free": "not_eligible",
       "starter": "not_eligible",
       "essential": "not_eligible",
       "growth": "not_eligible",
       "enterprise": 999.0
      }
     },
     {
      "units": 20000,
      "cheapest_plan": "enterprise",
      "cheapest_plan_name": "Enterprise",
      "total_month": 999.0,
      "billed": {
       "amount": 999.0,
       "every": "month"
      },
      "ranges": [],
      "per_plan": {
       "free": "not_eligible",
       "starter": "not_eligible",
       "essential": "not_eligible",
       "growth": "not_eligible",
       "enterprise": 999.0
      }
     },
     {
      "units": 50000,
      "cheapest_plan": "enterprise",
      "cheapest_plan_name": "Enterprise",
      "total_month": 999.0,
      "billed": {
       "amount": 999.0,
       "every": "month"
      },
      "ranges": [],
      "per_plan": {
       "free": "not_eligible",
       "starter": "not_eligible",
       "essential": "not_eligible",
       "growth": "not_eligible",
       "enterprise": 999.0
      }
     }
    ],
    "switch_points": [
     {
      "from_units": 50,
      "to_units": 300,
      "from_plan": "free",
      "to_plan": "starter",
      "from_plan_name": "Free",
      "to_plan_name": "Starter"
     },
     {
      "from_units": 300,
      "to_units": 700,
      "from_plan": "starter",
      "to_plan": "essential",
      "from_plan_name": "Starter",
      "to_plan_name": "Essential"
     },
     {
      "from_units": 2000,
      "to_units": 5000,
      "from_plan": "essential",
      "to_plan": "growth",
      "from_plan_name": "Essential",
      "to_plan_name": "Growth"
     },
     {
      "from_units": 5000,
      "to_units": 10000,
      "from_plan": "growth",
      "to_plan": "enterprise",
      "from_plan_name": "Growth",
      "to_plan_name": "Enterprise"
     }
    ],
    "conflicts": [],
    "unknowns": []
   }
  }
 },
 "unknowns": [
  "Contract terms (cancellation, data export, data location, minimum seats) are not researched as separate fields; pricing.notes mentions them only where the vendor's pricing page does.",
  "Being verified: free trial and refund terms are not yet matched to a verbatim line on the vendor's own pages. Not matched does not mean there is none.",
  "Not tested hands-on by us: what the product does comes from the vendor's pages and our reading of them."
 ],
 "verification": {
  "price": "read",
  "free_trial": "being_verified",
  "refund": "being_verified"
 },
 "status_page": null,
 "task_evidence": null,
 "open_questions": [
  {
   "question_id": "loyalino:cancellation_terms",
   "key": "cancellation_terms",
   "question": "Can a customer cancel at any time, and what happens to an annual plan that is cancelled mid-term?",
   "status": "open"
  },
  {
   "question_id": "loyalino:data_export",
   "key": "data_export",
   "question": "Which data can a customer export, in which formats, on which plans?",
   "status": "open"
  },
  {
   "question_id": "loyalino:data_location",
   "key": "data_location",
   "question": "Where is customer data stored, and can a customer choose the region?",
   "status": "open"
  }
 ],
 "vendor_answers": [],
 "agent_channels": {
  "vendor_mcp": null,
  "agent_checkout": {
   "status": "not_found",
   "detail": "No explicit support for purchases by AI agents on the vendor's own pages.",
   "checked_at": "2026-10-07",
   "method": "homepage, /pricing and the pricing page we cite, read as plain HTML (no JavaScript) and searched for explicit support of purchases by AI agents: Agentic Commerce Protocol, Instant Checkout, Agent Payments Protocol, buy in ChatGPT, agentic checkout"
  }
 }
}
