Find gaps in your local business profile and discover practical ways to improve your visibility, credibility and potential to attract customers.
01 / Tell us about your business
Select your business type
Doctor / Clinic / Healthcare
Professional services
Retail / Store
Restaurant / Food
Home services
Manufacturing / B2B
Other
02 / Check your profile
Select every item that is currently completed or regularly maintained on your Google Business Profile.
How this works: Your score is based on the items you confirm above. This tool does not access or independently verify your live Google listing. Select only the items you know are complete.
Enter your business name and city to generate your report.
Instant results · No sign-up required
Your audit results
Your Local SEO Snapshot
0
out of 100
Your profile snapshot
0/12Items marked complete
0Potential improvement areas
—Priority level
Your recommended next steps
Want a deeper Local SEO review?
Design Blast can help assess your local search strategy, website and opportunities to strengthen your online presence.
This is a self-assessment, not a live Google listing inspection or a ranking prediction. Results reflect the answers provided and do not guarantee local search performance.
(function () {
const root = document.getElementById('db-gbp-audit');
if (!root || root.dataset.initialized === 'true') return;
root.dataset.initialized = 'true';const checks = Array.from(root.querySelectorAll('input[data-points]'));
const recommendations = [
{
index: 0, title: 'Verify core business information',
text: 'Review your business name, phone, address or service area. Keep details accurate and consistent with your real-world business.',
priority: 'High priority'
},
{
index: 1, title: 'Review your primary business category',
text: 'Choose the most accurate available primary category. Add relevant additional categories only when they genuinely describe your business.',
priority: 'High priority'
},
{
index: 2, title: 'Complete your business hours',
text: 'Add accurate opening hours and update special hours when needed so customers know when they can reach you.',
priority: 'High priority'
},
{
index: 3, title: 'Improve your business description',
text: 'Explain what you do, who you serve and your main services in clear, natural language. Avoid keyword stuffing and promotional claims.',
priority: 'Medium priority'
},
{
index: 4, title: 'Add current, authentic photos',
text: 'Use genuine, good-quality images of your premises, team, work or products. Keep them current and representative of the business.',
priority: 'Medium priority'
},
{
index: 5, title: 'Review your services and products',
text: 'Add relevant services or products using the features available for your business category. Use clear descriptions where supported.',
priority: 'Medium priority'
},
{
index: 6, title: 'Build a consistent review process',
text: 'Invite genuine customers to share honest feedback without incentives or selective review gating. Make it easy for satisfied and dissatisfied customers to respond.',
priority: 'High priority'
},
{
index: 7, title: 'Respond to customer reviews',
text: 'Reply professionally and specifically to feedback. Avoid sharing private customer information, especially for healthcare businesses.',
priority: 'Medium priority'
},
{
index: 8, title: 'Check your website link',
text: 'Make sure the profile points to the correct working page. Use a relevant landing page when appropriate and track visits with suitable analytics.',
priority: 'High priority'
},
{
index: 9, title: 'Strengthen local website relevance',
text: 'Ensure your website clearly explains your services and the areas you serve. Include accurate contact details and useful location-specific content where relevant.',
priority: 'High priority'
},
{
index: 10, title: 'Share useful updates when relevant',
text: 'Use profile posts or updates where available to communicate genuine news, offers or helpful information. Prioritize usefulness over posting frequency.',
priority: 'Low priority'
},
{
index: 11, title: 'Schedule regular profile checks',
text: 'Periodically check for outdated hours, incorrect contact details, unexpected edits and other information that may need attention.',
priority: 'Medium priority'
}
];const get = id => root.querySelector('#' + id);get('db-audit-submit').addEventListener('click', function () {
const name = get('db-audit-name').value.trim();
const city = get('db-audit-city').value.trim();
const error = get('db-audit-error');if (!name || !city) {
error.style.display = 'block';
(!name ? get('db-audit-name') : get('db-audit-city')).focus();
return;
}
error.style.display = 'none';let score = 0;
let complete = 0;
const missing = [];checks.forEach((input, index) => {
if (input.checked) {
score += Number(input.dataset.points);
complete++;
} else {
missing.push(recommendations[index]);
}
});score = Math.min(100, score);
const gaps = checks.length - complete;
const color = score >= 80 ? '#16834a' : score >= 55 ? '#1769ff' : '#e59b23';let grade, summary;
if (score >= 80) {
grade = 'Strong self-assessment';
summary = 'You have marked most of the key profile practices as complete. Review the remaining opportunities and periodically check that your information stays accurate.';
} else if (score >= 55) {
grade = 'Room to improve';
summary = 'Several important practices are in place, but some gaps remain in your self-assessment. Prioritize core business information, customer trust and your website connection.';
} else {
grade = 'Start with the essentials';
summary = 'Your answers suggest several opportunities to strengthen your profile foundations. Work through the priority actions below, starting with accurate business details.';
}get('db-audit-score').textContent = score;
get('db-audit-circle').style.setProperty('--score-angle', (score * 3.6) + 'deg');
get('db-audit-circle').style.setProperty('--score-color', color);
get('db-audit-grade').textContent = grade;
get('db-audit-summary').textContent = name + ' · ' + city + '. ' + summary;
get('db-audit-report-title').textContent = 'Your Local SEO Snapshot';
get('db-audit-complete').textContent = complete + '/' + checks.length;
get('db-audit-gaps').textContent = gaps;
get('db-audit-priority').textContent = gaps >= 7 ? 'High' : gaps >= 3 ? 'Medium' : 'Low';const recBox = get('db-audit-recommendations');
recBox.innerHTML = '';if (missing.length === 0) {
const allGood = document.createElement('div');
allGood.className = 'all-good';
allGood.textContent = 'You marked all checklist items as complete. Consider a deeper review of local competitors, relevant search queries, website performance and the quality of your customer journey.';
recBox.appendChild(allGood);
} else {
// Show the most important gaps first, up to five recommendations.
const priorityOrder = { 'High priority': 0, 'Medium priority': 1, 'Low priority': 2 };
missing.sort((a, b) => priorityOrder[a.priority] - priorityOrder[b.priority]);
missing.slice(0, 5).forEach((rec, i) => {
const card = document.createElement('div');
card.className = 'recommendation';const icon = document.createElement('div');
icon.className = 'rec-icon';
icon.textContent = String(i + 1).padStart(2, '0');const content = document.createElement('div');
const title = document.createElement('h4');
title.textContent = rec.title;
const desc = document.createElement('p');
desc.textContent = rec.text;
const priority = document.createElement('span');
priority.className = 'priority';
priority.textContent = rec.priority;content.append(title, desc, priority);
card.append(icon, content);
recBox.appendChild(card);
});
}const contact = get('db-audit-contact');
const params = new URLSearchParams({
audit: 'google-business-profile',
business: name,
city: city,
score: String(score)
});
contact.href = '/contact/?' + params.toString();get('db-audit-form').style.display = 'none';
get('db-audit-report').classList.add('visible');
get('db-gbp-audit').scrollIntoView({ behavior: 'smooth', block: 'start' });
});get('db-audit-back').addEventListener('click', function () {
get('db-audit-report').classList.remove('visible');
get('db-audit-form').style.display = 'block';
get('db-gbp-audit').scrollIntoView({ behavior: 'smooth', block: 'start' });
});get('db-audit-print').addEventListener('click', function () {
window.print();
});
})();