New:ParentPal AI Plus is live· unlimited deeper support.

Know exactly what to say when parenting gets hard.

(function(){ // Tries to open Chatbase if API exists; otherwise no harm. function tryOpenChatbase(){ try{ if (typeof window.chatbase === 'function'){ window.chatbase('openChat'); return true; } }catch(e){} return false; } // Click near the bubble as a fallback. function clickBubbleArea(){ try{ var x = window.innerWidth - 28; var y = window.innerHeight - 28; var el = document.elementFromPoint(x,y); if (el){ el.click(); return true; } }catch(e){} return false; } // Show pulsing tooltip by the bubble. function showNudge(ms){ var n = document.getElementById('ppz-bubble-nudge'); if (!n) return; n.style.display = 'block'; var hide = function(){ n.style.display = 'none'; }; setTimeout(hide, ms || 6000); n.onclick = function(){ tryOpenChatbase() || clickBubbleArea(); hide(); }; } var btn = document.getElementById('ppz-open-chat'); if (!btn) return; btn.addEventListener('click', function(e){ e.preventDefault(); var opened = tryOpenChatbase(); if (!opened) clickBubbleArea(); showNudge(6000); var demo = document.getElementById('demo'); if (demo){ demo.scrollIntoView({behavior:'smooth', block:'start'}); } }); })();
Private by design
Ages 0 to 17
Available worldwide
30-day refund
How ParentPal AI works
1

Tell ParentPal AI

Share your child’s age and what happened. ParentPal AI gives age-smart support for babies, toddlers, children, and teens.

2

Get calm next steps

Get clear words to say, what to do next, and practical help for bedtime, tantrums, school stress, screen time, routines, or teen communication.

3

Use it in real life

Try the script, routine, checklist, or plan with your child. Plus users can create custom PDF plans, charts, trackers, and printable routines.

Free: 3 deep help responses per conversationPlus: unlimited support + custom PDFs$7.99 per monthor$69 per yearBilled in USDAvailable worldwide30-day refund

Built for real parenting moments

ParentPal AI helps parents worldwide with the moments that feel heavy: bedtime battles, school stress, screen-time fights, repair after shouting, sibling conflict, and teen communication.

Bedtime

My child will not stay in bed. What do I say now?

ParentPal AI helps with: calm words to use tonight, a simple bedtime reset, and a backup plan when the same struggle keeps repeating.

School stress

My child feels sick before school every morning.

ParentPal AI helps with: spotting the pattern, choosing the next calm step, and supporting your child without making the fear bigger.

Repair

I shouted and now I feel awful. How do I repair it?

ParentPal AI helps with: a repair script, a calmer reset plan, and practical words to reconnect without shame or overexplaining.

ParentPal AI gives general parenting support and practical guidance. It does not replace medical, mental health, legal, safeguarding, or emergency advice. If you are worried about immediate safety, contact your local emergency services or a qualified professional.

What ParentPal AI Can Do

Calm, age-smart parenting support for babies, toddlers, children, and teens, with scripts, routines, plans, and Plus printables you can use in real life.

💬

Parenting Help

Ask about bedtime, tantrums, sibling fights, screen time, school stress, teen communication, and the moments where you need words fast.

Show examples
  • “My 3-year-old keeps leaving bed.”
  • “My 14-year-old shuts down when I ask about school.”
🗓️

Routines & Plans

Get simple morning routines, bedtime resets, homework plans, screen-time structure, and calmer daily rhythms for your child’s age.

Show examples
  • “Make a calm morning routine for age 6.”
  • “Create a bedtime reset plan for my 11-year-old.”
✉️

Messages & Scripts

Get kind, firm words for your child, teacher, nursery, school, co-parent, coach, or family member when emotions are high.

Show examples
  • “Give me words to say after I shouted.”
  • “Write a calm message to my child’s teacher.”
📊

Custom PDFs & Printables

ParentPal AI Plus can create custom PDF plans, bedtime charts, morning charts, reward trackers, screen-time plans, and printable routines.

Show examples
  • “Create a reward chart for age 5.”
  • “Make a screen-time reset plan for age 11.”
🧩

School & Family Support

Turn school worries, nursery updates, behaviour concerns, family tension, or co-parent messages into calmer next steps.

Show examples
  • “My child feels sick before school every morning.”
  • “Help me explain this calmly to a grandparent.”
💡

Real-Life Parenting Ideas

Get low-effort ideas, screen-time swaps, repair conversations, connection prompts, and realistic options for tired parents.

Show examples
  • “Non-screen ideas for a 9-year-old indoors.”
  • “Help me reconnect with my teen.”
See ParentPal AI Plus
/* Open Chatbase bubble + optionally copy example prompt */ (function(){ function openParentPalChat(){ try{ if (typeof window.chatbase === 'function'){ window.chatbase('openChat'); window.chatbase('open'); return true; } }catch(e){} return false; } function clickBubbleFallback(){ try{ var x = window.innerWidth - 28; var y = window.innerHeight - 28; var el = document.elementFromPoint(x,y); if (el){ el.click(); return true; } }catch(e){} return false; } var openBtns = document.querySelectorAll('[data-openchat], .ppc2-try'); openBtns.forEach(function(btn){ btn.addEventListener('click', function(){ var txt = btn.getAttribute('data-prompt'); openParentPalChat() || clickBubbleFallback(); if (txt && navigator.clipboard){ navigator.clipboard.writeText(txt).catch(function(){}); } }); }); })();

What Parents Ask ParentPal AI

Ask in your own words. Tell ParentPal AI your child’s age and what happened, and get calm, practical help in seconds.

“My child will not go to bed.”

Get a calmer bedtime routine, exact words to say, and a backup plan for repeated call-backs.

Ask ParentPal AI
“My toddler melts down when I say no.”

Get age-fit steps, a simple boundary script, and ways to stay calm without giving in.

Ask ParentPal AI
“My child feels sick before school.”

Get a gentle next step, words to say, and a calm way to work with school if the pattern keeps repeating.

Ask ParentPal AI
“My children keep fighting.”

Get a no-blame conflict plan, words to coach both children, and rules that feel fair.

Ask ParentPal AI
“Screen time turns into a battle.”

Build a realistic screen-time boundary, transition script, and calmer replacement ideas.

Ask ParentPal AI
“I need a routine that actually works.”

Get a simple morning, bedtime, homework, or after-school routine matched to your child’s age.

Ask ParentPal AI
“I shouted and now I feel awful.”

Get a repair script, a way to reconnect, and a plan for handling the same trigger next time.

Ask ParentPal AI
“My teen will not talk to me.”

Get respectful teen-friendly wording, connection ideas, and boundaries that do not feel controlling.

Ask ParentPal AI
/* Single-open behavior + Open Chatbase on click scoped to #ask-cards */ (function(){ const root = document.getElementById('ask-cards'); if(!root) return; function openParentPalChat(){ try{ if(typeof window.chatbase === 'function'){ window.chatbase('openChat'); window.chatbase('open'); return true; } }catch(e){} return false; } function clickBubbleFallback(){ try{ const x = window.innerWidth - 28; const y = window.innerHeight - 28; const el = document.elementFromPoint(x,y); if(el){ el.click(); return true; } }catch(e){} return false; } const cards = Array.from(root.querySelectorAll('details.ppfx-card')); cards.forEach(function(card){ card.addEventListener('toggle', function(){ if(!this.open) return; cards.forEach(function(other){ if(other !== card) other.removeAttribute('open'); }); }); }); root.addEventListener('click', function(e){ const btn = e.target.closest('[data-openchat]'); if(!btn) return; e.preventDefault(); openParentPalChat() || clickBubbleFallback(); }, {passive:false}); })();
Age 4

Real ParentPal AI ResponseCheckout meltdown · what to say now

Age-smart support
“My 4-year-old has a meltdown at the checkout when I say no to sweets. What should I do?”

What to say

“I know you really wanted the sweets. It is hard when the answer is no. I will help you calm down, but the answer is still no.”

What to do next

  • Stay close and keep your voice low.
  • Use one simple sentence instead of explaining too much.
  • Give one small job: “Can you hold the apples or press the card button?”
  • Avoid bargaining once the boundary is set.
  • Notice the smallest calm moment: “You were upset and you came back to calm. That was strong.”

For next time

Before entering the shop, say: “Today we are buying food, not sweets. You can help me choose one fruit.”

ParentPal AI Plus can also create custom PDF routines, scripts, charts, checklists, trackers, and printable plans.

Real answers adapt to your child’s age, situation, and what you need in the moment.

Ask ParentPal AI
(function(){ const root = document.getElementById('ppx-example'); if(!root) return; function openParentPalChat(){ try{ if(typeof window.chatbase === 'function'){ window.chatbase('openChat'); window.chatbase('open'); return true; } }catch(e){} return false; } function clickBubbleFallback(){ try{ const x = window.innerWidth - 28; const y = window.innerHeight - 28; const el = document.elementFromPoint(x,y); if(el){ el.click(); return true; } }catch(e){} return false; } root.addEventListener('click', function(e){ const btn = e.target.closest('[data-openchat]'); if(!btn) return; e.preventDefault(); openParentPalChat() || clickBubbleFallback(); }, {passive:false}); })();

Choose your ParentPal AI plan

Free

$0

Try ParentPal AI first

  • 3 deeper help responses per conversation
  • Quick parenting questions and reassurance
  • Age-smart support for ages 0 to 17
  • Basic scripts, routines, and next steps
  • Custom PDFs are a Plus feature
ASK PARENTPAL AI FREE
Most Popular

ParentPal AI Plus

$7.99/mo

Custom plans, scripts, and PDFs

  • Unlimited deeper parenting support
  • Scripts for what to say in hard moments
  • Custom PDF plans, charts, and trackers
  • Download or email personalised PDFs
  • Support for babies, toddlers, children, and teens
  • 30-day refund. Cancel anytime.
UNLOCK PARENTPAL AI PLUS Save with yearly · $69/year

Billed in USD. Available for parents worldwide. ParentPal AI gives general parenting support, not medical, mental health, legal, safeguarding, or emergency advice.

(function(){ function createSigninButton(){ if(document.getElementById('pp-global-signin-cta')) return; var wrap = document.createElement('div'); wrap.id = 'pp-global-signin-cta'; wrap.className = 'not-plus'; var btn = document.createElement('button'); btn.id = 'pp-open-signin-btn'; btn.type = 'button'; btn.setAttribute('aria-label', 'Sign in to ParentPal Plus'); btn.setAttribute('aria-haspopup', 'dialog'); btn.setAttribute('aria-controls', 'pp-signin-overlay'); btn.textContent = 'Sign in'; btn.addEventListener('click', function(){ var overlay = document.getElementById('pp-signin-overlay'); if(overlay){ overlay.style.display = 'flex'; overlay.setAttribute('aria-hidden', 'false'); } }); wrap.appendChild(btn); document.body.appendChild(wrap); } if(document.readyState === 'loading'){ document.addEventListener('DOMContentLoaded', createSigninButton, { once:true }); } else { createSigninButton(); } })();
Is ParentPal AI private?
ParentPal AI is designed to feel private, calm, and judgment-free. We only use the information needed to run the service and improve your experience. We do not sell your data.
Who is ParentPal AI for?
ParentPal AI supports parents of children aged 0 to 17, from babies and toddlers to children and teens. Tell it your child’s age and what happened, and it gives age-smart guidance for that stage.
Why upgrade if there is a free plan?
Free lets you try ParentPal AI with 3 deeper help responses per conversation. Plus unlocks unlimited deeper parenting support, scripts, routines, custom PDF plans, charts, trackers, and printable routines you can download or receive by email.
Is ParentPal AI available worldwide?
Yes. ParentPal AI is available for parents worldwide. Pricing is billed in USD, and guidance uses global wording such as your local emergency number, your child’s doctor, your school, or local support services when needed.
Is ParentPal AI medical or professional advice?
No. ParentPal AI gives general parenting support and practical guidance. It does not replace medical, mental health, legal, safeguarding, emergency, or professional advice. If you are worried about immediate safety, contact your local emergency services or a qualified professional.
Can I cancel and get a refund?
Yes. You can cancel anytime. ParentPal AI Plus includes a 30-day refund if it is not a fit.
(function(){ var CHATBASE_ID = "-1At6pzYIoDfEXN2OOcjs"; var CHATBASE_SRC = "https://www.chatbase.co/embed.min.js"; var IDENTITY_URL = "https://api.parentpalway.com/api/chatbase-identity"; function getVisitorId(){ try{ var key = "pp_vid"; var existing = localStorage.getItem(key); if(existing && /^[a-zA-Z0-9_-]{8,120}$/.test(existing)){ return existing; } var id = ""; if(window.crypto && crypto.randomUUID){ id = crypto.randomUUID().replace(/-/g, ""); } else { id = "v_" + Date.now().toString(36) + "_" + Math.random().toString(36).slice(2, 14); } localStorage.setItem(key, id); return id; } catch(e){ return "v_" + Date.now().toString(36) + "_" + Math.random().toString(36).slice(2, 14); } } if(!window.chatbase || window.chatbase("getState") !== "initialized"){ window.chatbase = (...arguments) => { if(!window.chatbase.q){ window.chatbase.q = []; } window.chatbase.q.push(arguments); }; window.chatbase = new Proxy(window.chatbase, { get(target, prop){ if(prop === "q"){ return target.q; } return (...args) => target(prop, ...args); } }); } function loadChatbase(){ if(document.getElementById(CHATBASE_ID)) return; var script = document.createElement("script"); script.src = CHATBASE_SRC; script.id = CHATBASE_ID; script.domain = "www.chatbase.co"; document.body.appendChild(script); } function identifyParentPalUser(){ var vid = getVisitorId(); var url = IDENTITY_URL + "?vid=" + encodeURIComponent(vid); return fetch(url, { credentials:"include", cache:"no-store" }) .then(function(r){ return r.json(); }) .then(function(data){ if(!data || !data.user_id || !data.user_hash){ return; } window.chatbase("identify", { user_id: data.user_id, user_hash: data.user_hash, user_metadata: data.user_metadata || {} }); }) .catch(function(){}); } function start(){ identifyParentPalUser().finally(loadChatbase); } if(document.readyState === "complete"){ start(); } else { window.addEventListener("load", start, { once:true }); } })();

Join the ParentPal AI Insider List

Get early updates, parent-only tips, new tools, and feature drops first.

(function(){ function createSigninButton(){ if(document.getElementById('pp-global-signin-cta')) return; var wrap = document.createElement('div'); wrap.id = 'pp-global-signin-cta'; wrap.className = 'not-plus'; var btn = document.createElement('button'); btn.id = 'pp-open-signin-btn'; btn.type = 'button'; btn.setAttribute('aria-label', 'Sign in to ParentPal Plus'); btn.setAttribute('aria-haspopup', 'dialog'); btn.setAttribute('aria-controls', 'pp-signin-overlay'); btn.textContent = 'Sign in'; btn.addEventListener('click', function(){ var overlay = document.getElementById('pp-signin-overlay'); if(overlay){ overlay.style.display = 'flex'; overlay.setAttribute('aria-hidden', 'false'); } }); wrap.appendChild(btn); document.body.appendChild(wrap); } if(document.readyState === 'loading'){ document.addEventListener('DOMContentLoaded', createSigninButton, { once:true }); } else { createSigninButton(); } })();
(function(){ var CHATBASE_ID = "-1At6pzYIoDfEXN2OOcjs"; var CHATBASE_SRC = "https://www.chatbase.co/embed.min.js"; var IDENTITY_URL = "https://api.parentpalway.com/api/chatbase-identity"; function getVisitorId(){ try{ var key = "pp_vid"; var existing = localStorage.getItem(key); if(existing && /^[a-zA-Z0-9_-]{8,120}$/.test(existing)){ return existing; } var id = ""; if(window.crypto && crypto.randomUUID){ id = crypto.randomUUID().replace(/-/g, ""); } else { id = "v_" + Date.now().toString(36) + "_" + Math.random().toString(36).slice(2, 14); } localStorage.setItem(key, id); return id; } catch(e){ return "v_" + Date.now().toString(36) + "_" + Math.random().toString(36).slice(2, 14); } } if(!window.chatbase || window.chatbase("getState") !== "initialized"){ window.chatbase = (...arguments) => { if(!window.chatbase.q){ window.chatbase.q = []; } window.chatbase.q.push(arguments); }; window.chatbase = new Proxy(window.chatbase, { get(target, prop){ if(prop === "q"){ return target.q; } return (...args) => target(prop, ...args); } }); } function loadChatbase(){ if(document.getElementById(CHATBASE_ID)) return; var script = document.createElement("script"); script.src = CHATBASE_SRC; script.id = CHATBASE_ID; script.domain = "www.chatbase.co"; document.body.appendChild(script); } function identifyParentPalUser(){ var vid = getVisitorId(); var url = IDENTITY_URL + "?vid=" + encodeURIComponent(vid); return fetch(url, { credentials:"include", cache:"no-store" }) .then(function(r){ return r.json(); }) .then(function(data){ if(!data || !data.user_id || !data.user_hash){ return; } window.chatbase("identify", { user_id: data.user_id, user_hash: data.user_hash, user_metadata: data.user_metadata || {} }); }) .catch(function(){}); } function start(){ identifyParentPalUser().finally(loadChatbase); } if(document.readyState === "complete"){ start(); } else { window.addEventListener("load", start, { once:true }); } })();

What Parents Get With ParentPal AI

Calm, age-smart parenting support for ages 0 to 17, with clear words, practical routines, next steps, and Plus printables you can use in real life.

💬

Words To
Say

Scripts for bedtime, tantrums, repair after shouting, school stress, screen time, and teen conversations.

🗓️

Routines That
Feel Real

Morning, bedtime, homework, after-school, and screen-time routines built for real family life.

🧭

Calmer Next
Steps

Age-smart guidance that helps you know what to do next when you feel stuck, tired, or unsure.

📋

Custom PDFs
& Printables

Plus users can create personalised PDF plans, charts, trackers, checklists, and printable routines.


Support For Every Age 0 To 17

ParentPal AI adapts support to your child’s stage, from baby routines and toddler meltdowns to school stress, screen time, teen communication, and growing independence.

0 to 3
Babies & Toddlers
  • Sleep, naps, and bedtime routines
  • Separation tears and big feelings
  • First boundaries and gentle words
4 to 7
Early Childhood
  • Morning routines and listening
  • Meltdowns, repair, and confidence
  • Sibling fights, sharing, and fairness
8 to 12
School Years
  • Homework stress and motivation
  • Screen-time limits and routines
  • Friendship worries and school anxiety
13 to 17
Teen Years
  • Respectful teen communication
  • Social media and boundaries
  • School pressure, trust, and independence

Words ParentPal AI Can Help You Say

Real, age-smart examples for bedtime, sibling fights, teen boundaries, and repair moments when parenting feels hard.

Age 3Bedtime Refusal
Try saying

“I know you want more play. It is time for sleep now. I will help you settle.”

What ParentPal AI can build

  • A calm bedtime script you can say out loud.
  • A simple routine for the next 20 minutes.
  • A backup plan for repeated call-backs.
  • A softer approach if your child feels anxious.
Tone: Gentle + firmTool: Bedtime routine
Age 7Sibling Fights
Try saying

“I am stopping this because I will not let anyone get hurt. One person talks at a time.”

What ParentPal AI can build

  • A no-blame conflict reset script.
  • A fair turn-taking or timer plan.
  • Words for both children so neither feels blamed.
  • A repair routine after the fight has passed.
Tone: Calm + clearTool: Conflict reset
Age 15Teen Boundaries
Try saying

“I hear that you want more freedom. My job is to help you build trust and stay safe.”

What ParentPal AI can build

  • A respectful teen conversation script.
  • A boundary that does not sound controlling.
  • A plan for rebuilding trust after lateness.
  • A calmer follow-up message if things get heated.
Tone: Respectful + firmTool: Trust plan

ParentPal AI gives general parenting support and practical guidance. It does not replace medical, mental health, legal, safeguarding, or emergency advice.


From overwhelmed to clear in seconds

Tell ParentPal AI your child’s age, share what happened, and get calm words, next steps, or a practical plan you can use right away.

Step 1

Start with age

Share your child’s age first, so ParentPal AI can shape the support for their stage, from 0 to 17.

Step 2

Share the moment

Describe what happened, whether it is bedtime, tantrums, school stress, screen time, sibling fights, or teen communication.

Step 3

Get the next step

Receive clear words to say, what to do next, and a simple plan that helps you stay calm in the moment.

Plus

Create custom PDFs

ParentPal AI Plus can turn routines, scripts, charts, trackers, and plans into custom PDFs you can download or receive by email.


The ParentPal AI Promise

Built to help parents feel calmer, clearer, and less alone in everyday parenting moments.

🔒Private by design
🤝Judgment-free
🧠Age-smart support
🌍Available worldwide

Calm scripts, routines, custom plans, and practical next steps for real parenting moments from ages 0 to 17.

ParentPal AI gives general parenting support and practical guidance. It does not replace medical, mental health, legal, safeguarding, or emergency advice.


What Parents Notice First

ParentPal AI helps parents move from “I do not know what to say” to a calmer next step.

Use it for bedtime, tantrums, school stress, screen time, sibling fights, teen boundaries, and repair conversations.

0 to 17Age-smart support from baby years to teens
3 freeDeeper help responses per conversation
PlusUnlimited deeper support with custom PDFs, scripts, routines, charts, and trackers

ParentPal AI gives general parenting support and practical guidance. It does not replace medical, mental health, legal, safeguarding, or emergency advice.


Our Approach

  • Practical, age-smart support: ParentPal AI turns everyday parenting challenges into clear words, realistic routines, and simple next steps.
  • Age-first guidance: Support is shaped around your child’s age and stage, from baby years to teen communication.
  • Calm help, not lectures: Get scripts, routines, checklists, custom plans, and next steps you can actually use in real life.
  • Helpful signposting: When deeper reading may help, ParentPal AI can point you toward respected parenting and child health information hubs.

ParentPal AI gives general parenting support and practical guidance. It does not replace medical, mental health, legal, safeguarding, or emergency advice. If you are worried about immediate safety, contact your local emergency services or a qualified professional.


Is ParentPal AI really free?
Yes. You can try ParentPal AI free with 3 deeper help responses per conversation. Free is designed to help you ask real parenting questions and see how the support works before upgrading.
What does ParentPal AI Plus include?
ParentPal AI Plus unlocks unlimited deeper parenting support, scripts, routines, checklists, custom PDF plans, charts, trackers, printable routines, and support across different ages and children.
Can ParentPal AI create custom PDFs?
Yes. ParentPal AI Plus can create custom PDF routines, bedtime charts, morning charts, reward charts, screen-time plans, trackers, checklists, scripts, and practical parenting plans you can download or receive by email.
Is ParentPal AI for all ages?
ParentPal AI supports parents of children aged 0 to 17, from babies and toddlers to children and teens. Tell it your child’s age and what happened, and it shapes the guidance around that stage.
Is my data private?
ParentPal AI is designed to feel private and judgment-free. We use the information needed to run the service and improve your experience. We do not sell your data.
Is ParentPal AI medical, therapy, legal, or safeguarding advice?
No. ParentPal AI gives general parenting support and practical guidance. It does not replace medical, mental health, legal, safeguarding, emergency, or professional advice. If you are worried about immediate safety, contact your local emergency services or a qualified professional.
Can I use ParentPal AI with a partner or caregiver?
Yes. You can copy, share, screenshot, download, or email routines, scripts, checklists, and plans so partners, relatives, co-parents, and caregivers can stay aligned.
Is ParentPal AI available worldwide?
Yes. ParentPal AI is available for parents worldwide. Pricing is billed in USD, and guidance uses global wording such as your local emergency number, your child’s doctor, your school, or local support services when needed.
What is your refund policy?
ParentPal AI Plus includes a 30-day refund if it is not a fit. You can cancel anytime.

Know what to say when parenting gets hard

Ask ParentPal AI free for calm words, next steps, routines, and support for ages 0 to 17.

Save with yearly · $69/year

ParentPal AI Plus is $7.99/month. Billed in USD. 30-day refund. Cancel anytime.

Unlock Plus
(function(){ function openParentPalChat(){ try{ if(typeof window.chatbase === 'function'){ window.chatbase('openChat'); window.chatbase('open'); return true; } }catch(e){} try{ const x = window.innerWidth - 28; const y = window.innerHeight - 28; const el = document.elementFromPoint(x,y); if(el){ el.click(); return true; } }catch(e){} const candidates = [ '#chatbase-bubble', '#cb-launcher', '.cb-bubble', '.chatbase-bubble', '[data-chat-launcher]', '[class*="chatbase"] button' ]; for(const sel of candidates){ const el = document.querySelector(sel); if(el && typeof el.click === 'function'){ el.click(); return true; } } const demo = document.getElementById('demo'); if(demo){ demo.scrollIntoView({behavior:'smooth', block:'start'}); return true; } return false; } const btn = document.getElementById('pp-mobile-open-chat'); if(btn){ btn.addEventListener('click', function(e){ e.preventDefault(); openParentPalChat(); }); } /* Auto-hide CTA when legal/footer links are on screen so they remain tappable */ const bar = document.querySelector('.pp-sticky-cta'); if(!bar || !('IntersectionObserver' in window)) return; const targets = [ '#open-privacy', '#open-terms', '#privacy-policy', '#terms', 'a[href="#privacy-policy"]', 'a[href="#terms"]', 'footer' ] .map(function(s){ return document.querySelector(s); }) .filter(Boolean); if(!targets.length) return; const io = new IntersectionObserver(function(entries){ const shouldHide = entries.some(function(entry){ return entry.isIntersecting; }); bar.classList.toggle('is-hidden', shouldHide); }, { root:null, threshold:0.01, rootMargin:'0px 0px -90px 0px' }); targets.forEach(function(target){ io.observe(target); }); })();

[email protected]© 2026 ParentPal AI™. All rights reserved.Privacy Policy | Terms

(function () { const VERIFY = 'https://api.parentpalway.com/api/verify'; const BADGE_ID = 'pp-plus-badge'; // -------- 0) Plan helpers function normalisePlusResponse(data) { if (!data || typeof data !== 'object') return false; // Supports different backend response shapes safely. if (data.plus === true) return true; if (data.isPlus === true) return true; if (data.active === true) return true; const status = String(data.status || data.subscription_status || '').toLowerCase(); const plan = String(data.plan || data.tier || '').toLowerCase(); if ((status === 'active' || status === 'trialing') && (plan === 'plus' || plan === 'monthly' || plan === 'yearly')) { return true; } return false; } function applyPlan(isPlus) { const root = document.documentElement; if (isPlus) { root.classList.add('is-plus'); root.classList.remove('is-free'); try { localStorage.setItem('pp_plan', 'plus'); } catch(e) {} } else { root.classList.remove('is-plus'); root.classList.add('is-free'); try { localStorage.setItem('pp_plan', 'free'); } catch(e) {} } window.ppIsPlus = !!isPlus; } // Early cache to reduce visual flicker only. // This is not proof of Plus. /api/verify is still the authority. try { if (localStorage.getItem('pp_plan') === 'plus') { document.documentElement.classList.add('is-plus'); document.documentElement.classList.remove('is-free'); } } catch(e) {} // -------- 0.5) Chatbase refresh when Plus is detected function refreshChatbaseForPlus() { // Best-effort: clear likely Chatbase/session keys so the user gets a fresh post-upgrade session. try { Object.keys(localStorage).forEach(function(k) { if (/chatbase|cb_|conversation|chatbot/i.test(k)) { localStorage.removeItem(k); } }); } catch(e) {} function reloadFrameOnce(ifr) { if (!ifr) return; try { const u = new URL(ifr.src, location.href); u.searchParams.set('pp_plus', '1'); u.searchParams.set('plan', 'plus'); u.searchParams.set('ts', Date.now()); ifr.src = u.toString(); } catch(e) { try { ifr.src = ifr.src; } catch(_) {} } } const iframe = document.querySelector('iframe[src*="chatbase"]'); if (iframe) { reloadFrameOnce(iframe); return; } // If Chatbase is consent-gated or loads later, wait briefly. let seen = false; const obs = new MutationObserver(function() { if (seen) return; const f = document.querySelector('iframe[src*="chatbase"]'); if (f) { seen = true; reloadFrameOnce(f); obs.disconnect(); } }); obs.observe(document.documentElement, { childList:true, subtree:true }); setTimeout(function() { obs.disconnect(); }, 8000); } // -------- 1) Create Plus badge function addBadge() { if (document.getElementById(BADGE_ID)) return; const b = document.createElement('div'); b.id = BADGE_ID; b.setAttribute('aria-label', 'ParentPal AI Plus active'); b.innerHTML = ` ParentPal AI Plus `; Object.assign(b.style, { position: 'fixed', right: '16px', bottom: '120px', zIndex: 2147483000, display: 'inline-flex', alignItems: 'center', gap: '6px', padding: '8px 12px', borderRadius: '999px', background: 'linear-gradient(135deg,#FFF6D7,#FFE39E)', color: '#0f172a', font: '600 12px/1 system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif', border: '1px solid rgba(0,0,0,.06)', boxShadow: '0 8px 22px rgba(0,0,0,.18), inset 0 1px 0 rgba(255,255,255,.6)', transition: 'left .2s ease, right .2s ease, bottom .2s ease' }); document.body.appendChild(b); } function removeBadge() { const b = document.getElementById(BADGE_ID); if (b) b.remove(); } // -------- 2) Badge positioning around Chatbase bubble function rect(el) { return el.getBoundingClientRect(); } function overlaps(a, b) { const pad = 12; return !(a.right < b.left - pad || a.left > b.right + pad || a.bottom < b.top - pad || a.top > b.bottom + pad); } function getChatRect() { const chatbase = document.querySelector('iframe[src*="chatbase.co/chatbot-iframe"]') || document.querySelector('iframe[src*="chatbase"]'); if (chatbase) return rect(chatbase); const all = document.querySelectorAll('body *'); let best = null; let bestScore = -Infinity; for (const el of all) { if (el.id === BADGE_ID) continue; const cs = getComputedStyle(el); if (cs.position !== 'fixed') continue; const r = rect(el); const nearRight = (window.innerWidth - r.right) <= 220; const nearBottom = (window.innerHeight - r.bottom) <= 220; const bigEnough = r.width > 40 && r.height > 40; if (nearRight && nearBottom && bigEnough) { const score = r.right + r.bottom; if (score > bestScore) { bestScore = score; best = r; } } } return best; } function placeBadge() { const b = document.getElementById(BADGE_ID); if (!b) return; const isMobile = window.matchMedia('(max-width: 767px)').matches; b.style.bottom = isMobile ? '100px' : '120px'; b.style.right = '16px'; const cr = getChatRect(); if (!cr) return; const br = rect(b); const tooClose = (window.innerWidth - cr.left) < 140; if (overlaps(br, cr) || tooClose) { const desiredRight = Math.max(16, Math.round(window.innerWidth - cr.left + 16)); b.style.right = desiredRight + 'px'; } } let repositionStarted = false; function startRepositioning() { if (repositionStarted) return; repositionStarted = true; placeBadge(); let n = 0; const iv = setInterval(function() { placeBadge(); if (++n > 40) clearInterval(iv); }, 250); window.addEventListener('resize', placeBadge, { passive:true }); const obs = new MutationObserver(placeBadge); obs.observe(document.documentElement, { childList:true, subtree:true }); window.addEventListener('load', placeBadge); } // -------- 3) Verify with backend function init() { fetch(VERIFY, { credentials: 'include', cache: 'no-store' }) .then(function(r) { if (!r.ok) throw new Error('Verify failed'); return r.json(); }) .then(function(data) { const isPlus = normalisePlusResponse(data); applyPlan(isPlus); if (isPlus) { addBadge(); startRepositioning(); refreshChatbaseForPlus(); // Useful hook for other scripts. window.dispatchEvent(new CustomEvent('pp-plan-verified', { detail: { plus:true, data:data } })); } else { removeBadge(); window.dispatchEvent(new CustomEvent('pp-plan-verified', { detail: { plus:false, data:data } })); } }) .catch(function() { // Fail closed: no backend verification means no Plus UI. applyPlan(false); removeBadge(); window.dispatchEvent(new CustomEvent('pp-plan-verified', { detail: { plus:false, error:true } })); }); } // If consent UI applies later and user is already Plus, refresh Chatbase again. window.addEventListener('pp-consent-applied', function() { if (!document.documentElement.classList.contains('is-plus')) return; refreshChatbaseForPlus(); }); if (document.readyState === 'loading') { document.addEventListener('DOMContentLoaded', function() { setTimeout(init, 0); }, { once:true }); } else { setTimeout(init, 0); } })();

You’re all set!Thanks for upgrading to ParentPal AI Plus.Your access is active. Open ParentPal AI and start asking for deeper support, custom PDFs, routines, scripts, charts, and plans.If anything looks off, contact [email protected]