Copy overhaul + qr designs

This commit is contained in:
2026-07-27 17:54:59 +02:00
parent 033bc7e29d
commit 70d97aa970
144 changed files with 23107 additions and 1699 deletions

View File

@@ -1,4 +1,4 @@
// Centralized competitor data single source of truth for all comparison pages.
// Centralized competitor data - single source of truth for all comparison pages.
// Update pricing/features here and it propagates to all competitor pages.
export type FeatureComparison = {
@@ -31,9 +31,9 @@ export type CompetitorProfile = {
};
export const qrMasterPricing = {
free: '€0 3 active dynamic QR codes, unlimited static, basic tracking',
pro: '€9/month (€90/year) 50 dynamic QR codes, advanced analytics, custom branding',
business: '€29/month (€290/year) 500 dynamic QR codes, bulk creation up to 1,000, priority support',
free: '€0 - 3 active dynamic QR codes, unlimited static, basic tracking',
pro: '€9/month (€90/year) - 50 dynamic QR codes, advanced analytics, custom branding',
business: '€29/month (€290/year) - 500 dynamic QR codes, bulk creation up to 1,000, priority support',
};
export const competitors: Record<string, CompetitorProfile> = {
@@ -45,12 +45,12 @@ export const competitors: Record<string, CompetitorProfile> = {
targetAudience: 'General public, small businesses, first-time QR users',
positioning: 'High-volume consumer QR generator marketed as easy and free',
pricing: {
free: 'Static QR only dynamic QR codes deactivated after ~14-day trial',
free: 'Static QR only - dynamic QR codes deactivated after ~14-day trial',
starter: '~€8.99/month (billed annually) for basic dynamic QR',
pro: '~€24.99/month (billed annually) for analytics + more codes',
},
strengths: [
'High brand recognition many people land here first',
'High brand recognition - many people land here first',
'Simple interface for first-time users',
'Wide variety of QR types supported',
'Large template library for QR styling',
@@ -58,10 +58,10 @@ export const competitors: Record<string, CompetitorProfile> = {
weaknesses: [
'Dynamic QR codes are free only for ~14 days, then deactivated without warning',
'Users who already printed materials are forced into expensive annual contracts',
'Pricing is unclear upfront trial period is not prominently disclosed',
'Pricing is unclear upfront - trial period is not prominently disclosed',
'Analytics require paid plan even for basic scan counts',
'No bulk creation capability',
'US-based servers GDPR compliance not a priority',
'US-based servers - GDPR compliance not a priority',
],
bestFor: [
'One-off static QR code generation with no analytics needed',
@@ -75,18 +75,18 @@ export const competitors: Record<string, CompetitorProfile> = {
commonComplaints: [
'"I printed 500 flyers and my QR code stopped working after 2 weeks"',
'"Felt forced into an annual subscription I didn\'t understand I was signing up for"',
'"The free dynamic QR is a trap it gets deactivated right when you\'ve already distributed materials"',
'"The free dynamic QR is a trap - it gets deactivated right when you\'ve already distributed materials"',
'"No way to export or migrate codes if you want to leave"',
],
migrationNotes:
'Static QR codes cannot be migrated the destination is baked into the image. Dynamic QR codes need to be re-created. In QR Master, create new dynamic QR codes pointing to your same destinations. Then update your printed materials or digital placements to use the new codes. Static codes from QR Code Generator remain permanently valid even after you stop paying.',
'Static QR codes cannot be migrated - the destination is baked into the image. Dynamic QR codes need to be re-created. In QR Master, create new dynamic QR codes pointing to your same destinations. Then update your printed materials or digital placements to use the new codes. Static codes from QR Code Generator remain permanently valid even after you stop paying.',
features: [
{ feature: 'Free static QR codes', qrMaster: true, competitor: true },
{
feature: 'Free dynamic QR codes (permanent)',
qrMaster: '3 always-free',
competitor: '~14-day trial then deactivated',
note: 'QR Code Generator deactivates dynamic codes after trial even if already printed',
note: 'QR Code Generator deactivates dynamic codes after trial - even if already printed',
},
{ feature: 'Transparent pricing upfront', qrMaster: true, competitor: false },
{ feature: 'Scan analytics', qrMaster: 'All plans', competitor: 'Paid only' },
@@ -110,23 +110,23 @@ export const competitors: Record<string, CompetitorProfile> = {
targetAudience: 'Brands, marketers, enterprise design teams',
positioning: 'Premium-branded QR code platform emphasizing aesthetics and design',
pricing: {
free: 'Free limited codes, Flowcode branding on every QR, interstitial pages on scans',
free: 'Free - limited codes, Flowcode branding on every QR, interstitial pages on scans',
starter: '~$15/month for basic white-label',
pro: '~$49/month for team features and full branding removal',
enterprise: 'Custom pricing for large teams',
},
strengths: [
'Exceptional QR design options rounded, branded styles that stand out',
'Exceptional QR design options - rounded, branded styles that stand out',
'Strong brand recognition in the US market',
'Good enterprise team management features',
'Analytics dashboard is well-designed',
],
weaknesses: [
'Free tier forces Flowcode logo onto every QR code your brand takes second place',
'Free tier forces Flowcode logo onto every QR code - your brand takes second place',
'Interstitial pages on free tier send scanners through a Flowcode-branded page, stealing attention and analytics',
'White-label and clean QR design requires jumping to expensive paid plans',
'No bulk QR creation even on paid plans',
'US company GDPR compliance not built in',
'US company - GDPR compliance not built in',
'Pricing escalates quickly for teams',
],
bestFor: [
@@ -142,12 +142,12 @@ export const competitors: Record<string, CompetitorProfile> = {
],
commonComplaints: [
'"The free QR codes have Flowcode\'s logo on them, not mine"',
'"When customers scan my QR, they see a Flowcode page first I lose control of the experience"',
'"When customers scan my QR, they see a Flowcode page first - I lose control of the experience"',
'"Had to upgrade to $49/month just to get a clean QR code without their branding"',
'"No way to create QR codes in bulk even on paid plans"',
],
migrationNotes:
'Flowcode does not provide a bulk export tool. Each dynamic QR code needs to be re-created manually in QR Master. Since Flowcode uses its own redirect infrastructure, your printed QR codes pointing to Flowcode domains will stop working if you cancel plan migration before canceling. In QR Master, new dynamic QR codes are generated immediately and redirect infrastructure is included in all plans.',
'Flowcode does not provide a bulk export tool. Each dynamic QR code needs to be re-created manually in QR Master. Since Flowcode uses its own redirect infrastructure, your printed QR codes pointing to Flowcode domains will stop working if you cancel - plan migration before canceling. In QR Master, new dynamic QR codes are generated immediately and redirect infrastructure is included in all plans.',
features: [
{ feature: 'Free dynamic QR codes', qrMaster: '3 always-free', competitor: 'Limited, with branding' },
{
@@ -158,13 +158,14 @@ export const competitors: Record<string, CompetitorProfile> = {
},
{
feature: 'No branded interstitial page on scan',
qrMaster: 'Fast pass-through no Flowcode-style marketing page',
qrMaster: 'Fast pass-through - no Flowcode-style marketing page',
competitor: 'Paid plans only',
note: 'Flowcode free tier shows a branded splash page; QR Master redirects through qrmaster.net without any branded interstitial',
},
{ feature: 'GDPR-compliant analytics (hashed IPs)', qrMaster: true, competitor: false },
{ feature: 'Bulk QR creation', qrMaster: 'Business plan (up to 1,000)', competitor: false },
{ feature: 'Custom branding (your logo/colors)', qrMaster: 'Pro+', competitor: 'Paid plans' },
{ feature: 'Brand colors', qrMaster: 'Free', competitor: 'Paid plans' },
{ feature: 'Module shapes and logo', qrMaster: 'Pro+', competitor: 'Paid plans' },
{ feature: 'Scan analytics', qrMaster: 'All plans', competitor: 'Paid plans' },
{
feature: 'Pro pricing',
@@ -178,17 +179,17 @@ export const competitors: Record<string, CompetitorProfile> = {
id: 'beaconstac',
name: 'Uniqode (formerly Beaconstac)',
url: 'https://www.uniqode.com',
tagline: 'Enterprise QR platform excellent for large orgs, overkill for SMBs',
tagline: 'Enterprise QR platform - excellent for large orgs, overkill for SMBs',
targetAudience: 'Enterprise companies, large agencies, compliance-heavy industries',
positioning: 'Enterprise-grade QR code platform with SOC2 compliance, SSO, and deep API access',
pricing: {
free: 'No free plan paid-only from the start',
free: 'No free plan - paid-only from the start',
starter: '~$5/month (very limited features)',
pro: '~$4999/month for meaningful team and analytics features',
pro: '~$49-99/month for meaningful team and analytics features',
enterprise: 'Custom pricing for SOC2, SSO, advanced API',
},
strengths: [
'SOC2 Type II certified serious enterprise security credentials',
'SOC2 Type II certified - serious enterprise security credentials',
'Deep API access for custom integrations',
'SSO / SAML support for large organizations',
'White-label solution for agencies',
@@ -196,10 +197,10 @@ export const competitors: Record<string, CompetitorProfile> = {
'Long track record and brand trust',
],
weaknesses: [
'No free plan must pay from day one even for basic use',
'Meaningful features only unlock at $4999/month+',
'No free plan - must pay from day one even for basic use',
'Meaningful features only unlock at $49-99/month+',
'Interface is complex for users who just need to manage 50 dynamic QR codes',
'US company GDPR compliance requires additional configuration',
'US company - GDPR compliance requires additional configuration',
'Bulk creation and API access locked behind higher enterprise tiers',
'Setup and onboarding takes longer than simpler tools',
],
@@ -216,24 +217,24 @@ export const competitors: Record<string, CompetitorProfile> = {
'Anyone who finds the interface overwhelming for a straightforward use case',
],
commonComplaints: [
'"The $5 plan is basically useless you need to spend $49+ to get anything meaningful"',
'"Way too complex for what I need I just want to manage my 30 QR codes"',
'"The $5 plan is basically useless - you need to spend $49+ to get anything meaningful"',
'"Way too complex for what I need - I just want to manage my 30 QR codes"',
'"GDPR compliance required a lot of manual configuration"',
'"Expensive and hard to justify for a small marketing team"',
],
migrationNotes:
'Uniqode/Beaconstac allows CSV export of your QR code data. You can download your QR code list and re-create dynamic codes in QR Master. Static QR codes are permanently tied to their destination if you generated them as static codes, they remain valid forever. For dynamic codes, update your redirect destinations in QR Master and replace any printed materials that point to Uniqode redirect URLs.',
'Uniqode/Beaconstac allows CSV export of your QR code data. You can download your QR code list and re-create dynamic codes in QR Master. Static QR codes are permanently tied to their destination - if you generated them as static codes, they remain valid forever. For dynamic codes, update your redirect destinations in QR Master and replace any printed materials that point to Uniqode redirect URLs.',
features: [
{ feature: 'Free plan available', qrMaster: true, competitor: false },
{ feature: 'Pricing entry point', qrMaster: '€0 (free tier)', competitor: '~$5/month (limited)' },
{
feature: 'Meaningful features at base paid plan',
qrMaster: '€9/month analytics, branding, 50 dynamic QRs',
qrMaster: '€9/month - analytics, branding, 50 dynamic QRs',
competitor: '~$49/month for real team + analytics features',
},
{ feature: 'GDPR-compliant analytics (hashed IPs, out of box)', qrMaster: true, competitor: false },
{ feature: 'Bulk QR creation', qrMaster: 'Business plan (up to 1,000)', competitor: 'Enterprise tier' },
{ feature: 'SOC2 certification', qrMaster: false, competitor: true, note: 'Enterprise requirement most SMBs do not need this' },
{ feature: 'SOC2 certification', qrMaster: false, competitor: true, note: 'Enterprise requirement - most SMBs do not need this' },
{ feature: 'SSO / SAML', qrMaster: false, competitor: true, note: 'Enterprise requirement' },
{ feature: 'Simple onboarding for small teams', qrMaster: true, competitor: false },
],
@@ -243,25 +244,25 @@ export const competitors: Record<string, CompetitorProfile> = {
id: 'bitly',
name: 'Bitly',
url: 'https://bitly.com',
tagline: 'URL shortener with QR codes as a side feature only 2 QR codes at $10/month',
tagline: 'URL shortener with QR codes as a side feature - only 2 QR codes at $10/month',
targetAudience: 'Link management users, marketing teams using Bitly for short links',
positioning: 'Link management platform that added QR codes as a secondary feature',
pricing: {
free: 'Free 1 QR code only',
starter: '~$10/month (Core) "unlimited scans" but only 2 QR codes total',
pro: '~$2935/month more QR codes but still tightly capped; price jumps fast once you need more',
enterprise: 'Custom needed for meaningful QR code volume',
free: 'Free - 1 QR code only',
starter: '~$10/month (Core) - "unlimited scans" but only 2 QR codes total',
pro: '~$29-35/month - more QR codes but still tightly capped; price jumps fast once you need more',
enterprise: 'Custom - needed for meaningful QR code volume',
},
strengths: [
'Very strong brand recognition many people already use Bitly for link shortening',
'Very strong brand recognition - many people already use Bitly for link shortening',
'Combines link shortening and QR codes in one tool if you need both',
'Clean analytics dashboard for link tracking',
'Reliable redirect infrastructure',
'Good integrations with marketing tools',
],
weaknesses: [
'QR codes are a secondary feature core product is link shortening',
'Core plan (~$10/month) allows "unlimited scans" but only 2 QR codes total useless for real campaigns',
'QR codes are a secondary feature - core product is link shortening',
'Core plan (~$10/month) allows "unlimited scans" but only 2 QR codes total - useless for real campaigns',
'Need more than 2 QR codes? Pricing jumps disproportionately fast',
'Free plan allows only 1 QR code',
'No bulk QR creation at any plan level',
@@ -269,7 +270,7 @@ export const competitors: Record<string, CompetitorProfile> = {
'Not built for QR-specific workflows (restaurant menus, product packaging, etc.)',
],
bestFor: [
'Teams already using Bitly for link management who need 12 QR codes with no bulk requirements',
'Teams already using Bitly for link management who need 1-2 QR codes with no bulk requirements',
'Use cases where a QR code is a minor side channel, not a primary campaign element',
'Link tracking that happens to include a QR code as one of many channels',
],
@@ -281,13 +282,13 @@ export const competitors: Record<string, CompetitorProfile> = {
'QR code-first workflows like restaurant menus, product packaging, or event materials',
],
commonComplaints: [
'"$10/month and I only get 2 QR codes that\'s basically unusable for anything real"',
'"QR features feel like an afterthought the UI is built around links, not QR workflows"',
'"The free plan gives you exactly 1 QR code useless for real use"',
'"No bulk creation had to manually create each code one by one"',
'"$10/month and I only get 2 QR codes - that\'s basically unusable for anything real"',
'"QR features feel like an afterthought - the UI is built around links, not QR workflows"',
'"The free plan gives you exactly 1 QR code - useless for real use"',
'"No bulk creation - had to manually create each code one by one"',
],
migrationNotes:
'Bitly short links and QR codes are tied to Bitly\'s redirect infrastructure. If you cancel Bitly, your QR codes that point to bit.ly URLs will stop working. Export your link data from Bitly\'s dashboard before canceling. In QR Master, create new dynamic QR codes pointing directly to your destination URLs no Bitly redirect layer in between. Replace printed or distributed QR codes with the new QR Master codes.',
'Bitly short links and QR codes are tied to Bitly\'s redirect infrastructure. If you cancel Bitly, your QR codes that point to bit.ly URLs will stop working. Export your link data from Bitly\'s dashboard before canceling. In QR Master, create new dynamic QR codes pointing directly to your destination URLs - no Bitly redirect layer in between. Replace printed or distributed QR codes with the new QR Master codes.',
features: [
{ feature: 'Free QR codes', qrMaster: '3 dynamic + unlimited static', competitor: '1 QR code only' },
{ feature: 'QR codes on base paid plan (~$10/month)', qrMaster: '50 dynamic QRs (Pro €9/month)', competitor: '2 QR codes total', note: 'Bitly Core plan markets "unlimited scans" but caps you at 2 QR codes' },
@@ -297,8 +298,8 @@ export const competitors: Record<string, CompetitorProfile> = {
{ feature: 'QR codes for restaurant menus, packaging, events', qrMaster: true, competitor: 'Possible but not designed for it' },
{
feature: 'Pro pricing',
qrMaster: '€9/month 50 dynamic QRs, full analytics',
competitor: '~$10/month 2 QR codes only',
qrMaster: '€9/month - 50 dynamic QRs, full analytics',
competitor: '~$10/month - 2 QR codes only',
},
],
},