seo
This commit is contained in:
114
public/llms.txt
114
public/llms.txt
@@ -1,57 +1,57 @@
|
|||||||
# QR Master
|
# QR Master
|
||||||
|
|
||||||
> QR Master combines 20 free QR code generators and a free barcode generator with dynamic QR codes, scan analytics, bulk generation, and privacy-conscious campaign tracking.
|
> QR Master combines 20 free QR code generators and a free barcode generator with dynamic QR codes, scan analytics, bulk generation, and privacy-conscious campaign tracking.
|
||||||
|
|
||||||
- Primary domain: https://www.qrmaster.net
|
- Primary domain: https://www.qrmaster.net
|
||||||
- 20 free QR code generators plus a free barcode generator; 3 active dynamic QR codes are included on the free plan, with unlimited static codes
|
- 20 free QR code generators plus a free barcode generator; 3 active dynamic QR codes are included on the free plan, with unlimited static codes
|
||||||
- Paid plans add higher dynamic-code limits, advanced analytics, custom branding, and bulk CSV/Excel workflows
|
- Paid plans add higher dynamic-code limits, advanced analytics, custom branding, and bulk CSV/Excel workflows
|
||||||
- Main audience: marketers, restaurants, event teams, retail, and SMB operators
|
- Main audience: marketers, restaurants, event teams, retail, and SMB operators
|
||||||
- Public content is optimized for citation and retrieval by AI search systems
|
- Public content is optimized for citation and retrieval by AI search systems
|
||||||
|
|
||||||
## Core Product Pages
|
## Core Product Pages
|
||||||
|
|
||||||
- [Homepage](https://www.qrmaster.net): Product overview and positioning for dynamic QR codes
|
- [Homepage](https://www.qrmaster.net): Product overview and positioning for dynamic QR codes
|
||||||
- [Pricing](https://www.qrmaster.net/pricing): Plans, limits, and upgrade paths
|
- [Pricing](https://www.qrmaster.net/pricing): Plans, limits, and upgrade paths
|
||||||
- [Dynamic QR Code Generator](https://www.qrmaster.net/dynamic-qr-code-generator): Main page for editable QR codes
|
- [Dynamic QR Code Generator](https://www.qrmaster.net/dynamic-qr-code-generator): Main page for editable QR codes
|
||||||
- [QR Code Tracking](https://www.qrmaster.net/qr-code-tracking): Analytics, scan reporting, and campaign measurement
|
- [QR Code Tracking](https://www.qrmaster.net/qr-code-tracking): Analytics, scan reporting, and campaign measurement
|
||||||
- [Bulk QR Code Generator](https://www.qrmaster.net/bulk-qr-code-generator): High-volume QR creation for CSV and Excel workflows
|
- [Bulk QR Code Generator](https://www.qrmaster.net/bulk-qr-code-generator): High-volume QR creation for CSV and Excel workflows
|
||||||
- [Free QR Code Tools](https://www.qrmaster.net/tools): 20 specialized QR generators for links, contact cards, Wi-Fi, social profiles, payments, meetings, reviews, and more
|
- [Free QR Code Tools](https://www.qrmaster.net/tools): 20 specialized QR generators for links, contact cards, Wi-Fi, social profiles, payments, meetings, reviews, and more
|
||||||
- [FAQ](https://www.qrmaster.net/faq): Direct answers to product, billing, and implementation questions
|
- [FAQ](https://www.qrmaster.net/faq): Direct answers to product, billing, and implementation questions
|
||||||
|
|
||||||
## Cornerstone Guides
|
## Cornerstone Guides
|
||||||
|
|
||||||
- [Dynamic vs Static QR Codes](https://www.qrmaster.net/blog/dynamic-vs-static-qr-codes/raw): Best guide for choosing editable vs fixed QR codes
|
- [Static vs Dynamic QR Codes](https://www.qrmaster.net/blog/static-vs-dynamic-qr-code/raw): Best guide for choosing editable vs fixed QR codes
|
||||||
- [QR Code Tracking Guide](https://www.qrmaster.net/blog/qr-code-tracking-guide-2025/raw): Best guide for analytics, attribution, and ROI measurement
|
- [QR Code Tracking Guide](https://www.qrmaster.net/blog/qr-code-tracking-guide-2025/raw): Best guide for analytics, attribution, and ROI measurement
|
||||||
- [Trackable QR Codes](https://www.qrmaster.net/blog/trackable-qr-codes/raw): Best guide for understanding scan measurement and dynamic redirects
|
- [Trackable QR Codes](https://www.qrmaster.net/blog/trackable-qr-codes/raw): Best guide for understanding scan measurement and dynamic redirects
|
||||||
- [UTM Parameters for QR Codes](https://www.qrmaster.net/blog/utm-parameter-qr-codes/raw): Best guide for campaign attribution in analytics tools
|
- [UTM Parameters for QR Codes](https://www.qrmaster.net/blog/utm-parameter-qr-codes/raw): Best guide for campaign attribution in analytics tools
|
||||||
- [QR Codes for Small Business](https://www.qrmaster.net/blog/qr-code-small-business/raw): Best guide for SMB use cases and buying criteria
|
- [QR Codes for Small Business](https://www.qrmaster.net/blog/qr-code-small-business/raw): Best guide for SMB use cases and buying criteria
|
||||||
|
|
||||||
## Additional Retrieval Guides
|
## Additional Retrieval Guides
|
||||||
|
|
||||||
- [QR Code Scan Statistics 2026](https://www.qrmaster.net/blog/qr-code-scan-statistics-2026/raw): Best guide for which QR statistics are traceable to a named source and which circulate unverified
|
- [QR Code Scan Statistics 2026](https://www.qrmaster.net/blog/qr-code-scan-statistics-2026/raw): Best guide for which QR statistics are traceable to a named source and which circulate unverified
|
||||||
- [QR Code Analytics](https://www.qrmaster.net/qr-code-analytics): Best guide for scan metrics, dashboards, and performance analysis
|
- [QR Code Analytics](https://www.qrmaster.net/qr-code-analytics): Best guide for scan metrics, dashboards, and performance analysis
|
||||||
- [QR Codes for Events](https://www.qrmaster.net/blog/qr-code-events/raw): Best guide for ticketing, check-in workflows, and event ROI tracking
|
- [QR Codes for Events](https://www.qrmaster.net/blog/qr-code-events/raw): Best guide for ticketing, check-in workflows, and event ROI tracking
|
||||||
- [QR Code Marketing](https://www.qrmaster.net/blog/qr-code-marketing/raw): Best guide for campaign strategy, CTAs, placement, and UTM-driven ROI measurement
|
- [QR Code Marketing](https://www.qrmaster.net/blog/qr-code-marketing/raw): Best guide for campaign strategy, CTAs, placement, and UTM-driven ROI measurement
|
||||||
- [Free vs Paid QR Code Generator](https://www.qrmaster.net/blog/free-vs-paid-qr-generator/raw): Best guide for comparing static vs dynamic, tracking, branding, and reliability
|
- [Free vs Paid QR Code Generator](https://www.qrmaster.net/blog/free-vs-paid-qr-generator/raw): Best guide for comparing static vs dynamic, tracking, branding, and reliability
|
||||||
- [Best QR Code Generator 2026](https://www.qrmaster.net/blog/best-qr-code-generator-2026/raw): Best guide for evaluating QR platforms by tracking, API, design, and pricing
|
- [Best QR Code Generator 2026](https://www.qrmaster.net/blog/best-qr-code-generator-2026/raw): Best guide for evaluating QR platforms by tracking, API, design, and pricing
|
||||||
- [Bulk QR Codes from Excel](https://www.qrmaster.net/blog/bulk-qr-code-generator-excel/raw): Best guide for CSV and Excel batch generation workflows
|
- [Bulk QR Codes from Excel](https://www.qrmaster.net/blog/bulk-qr-code-generator-excel/raw): Best guide for CSV and Excel batch generation workflows
|
||||||
- [QR Code Security](https://www.qrmaster.net/blog/qr-code-security/raw): Best guide for quishing risks, verification, and safe QR deployment practices
|
- [QR Code Security](https://www.qrmaster.net/blog/qr-code-security/raw): Best guide for quishing risks, verification, and safe QR deployment practices
|
||||||
|
|
||||||
## Task-Specific Guides
|
## Task-Specific Guides
|
||||||
|
|
||||||
- [Google Review QR Codes](https://www.qrmaster.net/blog/google-review-qr-code/raw): Best guide for finding the direct review link or Place ID, placement at point of payment, and the review gating rule that violates Google policy
|
- [Google Review QR Codes](https://www.qrmaster.net/blog/google-review-qr-code/raw): Best guide for finding the direct review link or Place ID, placement at point of payment, and the review gating rule that violates Google policy
|
||||||
- [Location QR Codes](https://www.qrmaster.net/blog/location-qr-code/raw): Best guide for choosing between geo: URIs, Google Maps URLs and Apple Maps links, including why geo: is unreliable on iOS
|
- [Location QR Codes](https://www.qrmaster.net/blog/location-qr-code/raw): Best guide for choosing between geo: URIs, Google Maps URLs and Apple Maps links, including why geo: is unreliable on iOS
|
||||||
- [Custom QR Codes with Logo](https://www.qrmaster.net/blog/custom-qr-code-design/raw): Best guide for logo coverage limits, untouchable finder patterns, and why luminance contrast matters more than hue
|
- [Custom QR Codes with Logo](https://www.qrmaster.net/blog/custom-qr-code-design/raw): Best guide for logo coverage limits, untouchable finder patterns, and why luminance contrast matters more than hue
|
||||||
- [QR Code Coupons](https://www.qrmaster.net/blog/qr-code-coupons/raw): Best guide for unique single-use codes versus one shared code, redemption tracking, and expiry handling
|
- [QR Code Coupons](https://www.qrmaster.net/blog/qr-code-coupons/raw): Best guide for unique single-use codes versus one shared code, redemption tracking, and expiry handling
|
||||||
- [Feedback QR Codes](https://www.qrmaster.net/blog/feedback-qr-code/raw): Best guide for form length and response rates, timing, and keeping private feedback separate from public review requests
|
- [Feedback QR Codes](https://www.qrmaster.net/blog/feedback-qr-code/raw): Best guide for form length and response rates, timing, and keeping private feedback separate from public review requests
|
||||||
- [Generating QR Codes Programmatically](https://www.qrmaster.net/blog/qr-code-api-documentation/raw): Best guide for generating static codes in Python or Node, batch generation, and why dynamic codes require a hosted redirect
|
- [Generating QR Codes Programmatically](https://www.qrmaster.net/blog/qr-code-api-documentation/raw): Best guide for generating static codes in Python or Node, batch generation, and why dynamic codes require a hosted redirect
|
||||||
- [QR Code Print Size Guide](https://www.qrmaster.net/blog/qr-code-print-size-guide/raw): Best guide for sizing by scan distance, module size, quiet zone, and error correction levels
|
- [QR Code Print Size Guide](https://www.qrmaster.net/blog/qr-code-print-size-guide/raw): Best guide for sizing by scan distance, module size, quiet zone, and error correction levels
|
||||||
- [WhatsApp QR Codes](https://www.qrmaster.net/blog/whatsapp-qr-code-generator/raw): Best guide for the wa.me number format, pre-filled messages, and URL encoding
|
- [WhatsApp QR Codes](https://www.qrmaster.net/blog/whatsapp-qr-code-generator/raw): Best guide for the wa.me number format, pre-filled messages, and URL encoding
|
||||||
- [vCard QR Codes](https://www.qrmaster.net/blog/vcard-qr-code-generator/raw): Best guide for vCard 3.0 field selection, international phone formats, and keeping the grid printable
|
- [vCard QR Codes](https://www.qrmaster.net/blog/vcard-qr-code-generator/raw): Best guide for vCard 3.0 field selection, international phone formats, and keeping the grid printable
|
||||||
- [Barcode Generator Guide](https://www.qrmaster.net/blog/barcode-generator-tool/raw): Best guide for choosing between EAN-13, UPC-A and Code 128, and why retail barcodes require GS1 numbers
|
- [Barcode Generator Guide](https://www.qrmaster.net/blog/barcode-generator-tool/raw): Best guide for choosing between EAN-13, UPC-A and Code 128, and why retail barcodes require GS1 numbers
|
||||||
|
|
||||||
## Additional Context
|
## Additional Context
|
||||||
|
|
||||||
- [Blog Index](https://www.qrmaster.net/blog): All published QR marketing and implementation guides
|
- [Blog Index](https://www.qrmaster.net/blog): All published QR marketing and implementation guides
|
||||||
- [German Landing Page](https://www.qrmaster.net/qr-code-erstellen): Main German-language marketing page
|
- [German Landing Page](https://www.qrmaster.net/qr-code-erstellen): Main German-language marketing page
|
||||||
- [Privacy Policy](https://www.qrmaster.net/privacy): Privacy and data handling information
|
- [Privacy Policy](https://www.qrmaster.net/privacy): Privacy and data handling information
|
||||||
|
|||||||
9428
src/lib/blog-data.ts
9428
src/lib/blog-data.ts
File diff suppressed because it is too large
Load Diff
@@ -291,8 +291,8 @@ export const supportResources: SupportResourceLink[] = [
|
|||||||
'Editorial pillar page for educational browsing and broader QR workflow discovery.',
|
'Editorial pillar page for educational browsing and broader QR workflow discovery.',
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
href: '/blog/dynamic-vs-static-qr-codes',
|
href: '/blog/static-vs-dynamic-qr-code',
|
||||||
title: 'Dynamic vs Static QR Codes',
|
title: 'Static vs Dynamic QR Codes',
|
||||||
description:
|
description:
|
||||||
'Explainer for the operational difference between fixed and editable QR destinations.',
|
'Explainer for the operational difference between fixed and editable QR destinations.',
|
||||||
},
|
},
|
||||||
@@ -1484,8 +1484,8 @@ export const useCasePageContent: Record<string, UseCasePageContent> = {
|
|||||||
description: 'Useful when the same physical surfaces need an up-to-date post-scan payment action.',
|
description: 'Useful when the same physical surfaces need an up-to-date post-scan payment action.',
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
href: '/blog/dynamic-vs-static-qr-codes',
|
href: '/blog/static-vs-dynamic-qr-code',
|
||||||
title: 'Dynamic vs Static QR Codes',
|
title: 'Static vs Dynamic QR Codes',
|
||||||
description: 'Existing editorial asset for choosing editable QR destinations.',
|
description: 'Existing editorial asset for choosing editable QR destinations.',
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
@@ -1572,8 +1572,8 @@ export const useCasePageContent: Record<string, UseCasePageContent> = {
|
|||||||
description: 'Another contact-first workflow where the destination needs to stay current after print.',
|
description: 'Another contact-first workflow where the destination needs to stay current after print.',
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
href: '/blog/dynamic-vs-static-qr-codes',
|
href: '/blog/static-vs-dynamic-qr-code',
|
||||||
title: 'Dynamic vs Static QR Codes',
|
title: 'Static vs Dynamic QR Codes',
|
||||||
description: 'Useful background for choosing dynamic QR destinations.',
|
description: 'Useful background for choosing dynamic QR destinations.',
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -30,14 +30,25 @@ export function organizationSchema() {
|
|||||||
'@context': 'https://schema.org',
|
'@context': 'https://schema.org',
|
||||||
'@type': 'Organization',
|
'@type': 'Organization',
|
||||||
'@id': `${SITE_URL}/#organization`,
|
'@id': `${SITE_URL}/#organization`,
|
||||||
name: 'QR Master',
|
name: 'QR Master',
|
||||||
alternateName: ['QRMaster', 'QR Master QR Code Generator'],
|
// The brand name is contested: a competing generator runs on qr-master.org
|
||||||
url: SITE_URL,
|
// and two unrelated Android apps ship as "QR Master". Listing the spellings
|
||||||
logo: {
|
// people actually type (incl. the hyphenated form) helps Google tie those
|
||||||
'@type': 'ImageObject',
|
// queries to this entity rather than a namesake.
|
||||||
url: `${SITE_URL}/og-image.png`,
|
alternateName: [
|
||||||
width: 1200,
|
'QRMaster',
|
||||||
height: 630,
|
'QR-Master',
|
||||||
|
'qrmaster.net',
|
||||||
|
'QR Master QR Code Generator',
|
||||||
|
],
|
||||||
|
description:
|
||||||
|
'QR Master is a QR code generator for dynamic QR codes that stay editable after printing, with scan analytics by time, device, and location.',
|
||||||
|
url: SITE_URL,
|
||||||
|
logo: {
|
||||||
|
'@type': 'ImageObject',
|
||||||
|
url: `${SITE_URL}/og-image.png`,
|
||||||
|
width: 1200,
|
||||||
|
height: 630,
|
||||||
},
|
},
|
||||||
sameAs: [
|
sameAs: [
|
||||||
'https://www.wikidata.org/wiki/Q137918857',
|
'https://www.wikidata.org/wiki/Q137918857',
|
||||||
@@ -95,9 +106,9 @@ export function blogPostingSchema(post: BlogPost, author?: AuthorProfile) {
|
|||||||
name: "QR Master",
|
name: "QR Master",
|
||||||
url: SITE_URL,
|
url: SITE_URL,
|
||||||
logo: {
|
logo: {
|
||||||
'@type': 'ImageObject',
|
'@type': 'ImageObject',
|
||||||
url: `${SITE_URL}/og-image.png`,
|
url: `${SITE_URL}/og-image.png`,
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
isPartOf: {
|
isPartOf: {
|
||||||
'@type': 'Blog',
|
'@type': 'Blog',
|
||||||
@@ -272,7 +283,7 @@ export function articleSchema(params: {
|
|||||||
url: SITE_URL,
|
url: SITE_URL,
|
||||||
logo: {
|
logo: {
|
||||||
'@type': 'ImageObject',
|
'@type': 'ImageObject',
|
||||||
url: `${SITE_URL}/og-image.png`,
|
url: `${SITE_URL}/og-image.png`,
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
url: params.url,
|
url: params.url,
|
||||||
@@ -287,7 +298,7 @@ export function reviewSchema(testimonial: Testimonial) {
|
|||||||
'@type': 'SoftwareApplication',
|
'@type': 'SoftwareApplication',
|
||||||
name: 'QR Master',
|
name: 'QR Master',
|
||||||
description: 'Professional QR code generator with dynamic QR codes, analytics, and customization.',
|
description: 'Professional QR code generator with dynamic QR codes, analytics, and customization.',
|
||||||
image: `${SITE_URL}/og-image.png`,
|
image: `${SITE_URL}/og-image.png`,
|
||||||
applicationCategory: 'BusinessApplication',
|
applicationCategory: 'BusinessApplication',
|
||||||
operatingSystem: 'Web Browser',
|
operatingSystem: 'Web Browser',
|
||||||
offers: {
|
offers: {
|
||||||
@@ -320,7 +331,7 @@ export function aggregateRatingSchema(aggregateRating: AggregateRating) {
|
|||||||
'@type': 'SoftwareApplication',
|
'@type': 'SoftwareApplication',
|
||||||
name: 'QR Master',
|
name: 'QR Master',
|
||||||
description: 'Professional QR code generator with dynamic QR codes, analytics, and customization.',
|
description: 'Professional QR code generator with dynamic QR codes, analytics, and customization.',
|
||||||
image: `${SITE_URL}/og-image.png`,
|
image: `${SITE_URL}/og-image.png`,
|
||||||
applicationCategory: 'BusinessApplication',
|
applicationCategory: 'BusinessApplication',
|
||||||
operatingSystem: 'Web Browser',
|
operatingSystem: 'Web Browser',
|
||||||
url: SITE_URL,
|
url: SITE_URL,
|
||||||
@@ -367,7 +378,7 @@ export function newsArticleSchema(params: NewsArticleParams) {
|
|||||||
'@id': `${SITE_URL}/#organization`,
|
'@id': `${SITE_URL}/#organization`,
|
||||||
logo: {
|
logo: {
|
||||||
'@type': 'ImageObject',
|
'@type': 'ImageObject',
|
||||||
url: `${SITE_URL}/og-image.png`,
|
url: `${SITE_URL}/og-image.png`,
|
||||||
width: 1200,
|
width: 1200,
|
||||||
height: 630,
|
height: 630,
|
||||||
},
|
},
|
||||||
|
|||||||
Reference in New Issue
Block a user