# Pricing

> Simple, transparent pricing (like every agency should have) One flat monthly fee with every ad channel included — no per-channel pricing and no setup fees.&he

**Published:** 2026-08-27 | **Updated:** 2026-08-28 | **Author:** angelica
**URL:** https://www.saashero.net/pricing/
**Type:** page


---

## Content

@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@400;500;600;700;800&display=swap');
:root{
  --navy: #0D3B65;
  --navy2: #0D4A70;
  --navy-deep: #082A47;
  --orange: #F29021;
  --orange-d: #e3851b;
  --orange-soft: #FEF3E4;
  --teal: #1BD2D0;
  --teal-deep: #0FB8B7;
  --teal-bg: #F2FEFE;
  --teal-card: #F6FFFF;
  --body: #51607A;
  --body-soft: #7A879D;
  --border: #ECEEF6;
  --border-strong: #E2E5F0;
  --divider: #D9DBE9;
  --page: #FBFBFE;
  --card: #FFFFFF;
  --shadow-sm: 0 5px 26px 0 rgba(25,33,61,.06);
  --shadow-md: 0 18px 44px -16px rgba(25,33,61,.18), 0 6px 16px -8px rgba(12,59,101,.10);
  --shadow-orange: 0 18px 40px -14px rgba(247,148,33,.45);
  --shadow-teal: 0 18px 40px -14px rgba(17,214,213,.42);
  --maxw: 1200px;
}
.sh-root *{ box-sizing: border-box; margin: 0; padding: 0; }
.sh-root{ scroll-behavior: smooth; }
.sh-root{
  font-family: "Poppins", system-ui, sans-serif;
  background: var(--page);
  color: var(--body);
  -webkit-font-smoothing: antialiased;
  line-height: 1.5;
}
.sh-root .wrap{ max-width: var(--maxw); margin: 0 auto; padding: 0 40px; }
.sh-root .nav{
  position: sticky; top: 0; z-index: 50;
  background: rgba(251,251,254,.88); backdrop-filter: blur(14px);
  border-bottom: 1px solid var(--border);
}
.sh-root .nav-inner{
  display: flex; align-items: center; justify-content: space-between;
  max-width: var(--maxw); margin: 0 auto; padding: 16px 40px;
}
.sh-root .brand{ display: flex; align-items: center; gap: 11px; text-decoration: none; }
.sh-root .brand-mark{
  width: 32px; height: 32px; border-radius: 9px; background: var(--navy);
  display: grid; place-items: center; color: #fff; font-weight: 700; font-size: 18px;
  box-shadow: 0 6px 14px -6px rgba(12,59,101,.6);
}
.sh-root .brand-mark b{ color: var(--orange); }
.sh-root .brand-name{ font-weight: 700; font-size: 19px; color: var(--navy); letter-spacing: -.01em; white-space: nowrap; }
.sh-root .brand-name span{ color: var(--orange); }
.sh-root .brand-logo{ height: 34px; width: auto; display: block; }
.sh-root .brand-wordmark{ display: inline-flex; align-items: baseline; font-weight: 800; font-size: 21px; color: var(--navy); letter-spacing: -.01em; white-space: nowrap; }
.sh-root .brand-wordmark b{ color: var(--orange); font-weight: 800; }
.sh-root .footer .brand-logo{ height: 38px; }
.sh-root .footer .brand-wordmark{ color: #fff; }
.sh-root .nav-links{ display: flex; align-items: center; gap: 30px; }
.sh-root .nav-links a{ font-size: 14.5px; font-weight: 600; color: var(--navy2); text-decoration: none; opacity: .85; transition: opacity .15s; }
.sh-root .nav-links a:hover{ opacity: 1; color: var(--orange); }
.sh-root .nav-links .caret{ font-size: 11px; opacity: .6; }
.sh-root .btn{ font-family: inherit; cursor: pointer; text-decoration: none; display: inline-flex; align-items: center; justify-content: center; gap: 8px; font-weight: 600; transition: transform .16s, box-shadow .16s, background .16s, border-color .16s, color .16s; }
.sh-root .btn svg{ flex: none; transition: transform .16s; }
.sh-root .btn-orange{ background: var(--orange); color: #fff; font-size: 14.5px; padding: 12px 22px; border-radius: 10px; border: none; box-shadow: 0 8px 18px -8px rgba(247,148,33,.7); white-space: nowrap; }
.sh-root .btn-orange:hover{ transform: translateY(-2px); box-shadow: 0 14px 26px -10px rgba(247,148,33,.85); background: var(--orange-d); }
.sh-root .btn-orange:hover svg{ transform: translateX(3px); }
.sh-root .btn-navy{ background: var(--navy); color: #fff; font-size: 15px; padding: 14px 26px; border-radius: 11px; border: none; box-shadow: 0 10px 22px -10px rgba(12,59,101,.7); }
.sh-root .btn-navy:hover{ transform: translateY(-2px); background: var(--navy-deep); }
.sh-root .btn-navy:hover svg{ transform: translateX(3px); }
.sh-root .btn-lg{ font-size: 16px; padding: 16px 30px; border-radius: 12px; }
.sh-root .btn-outline{ background: #fff; color: var(--navy2); font-size: 14.5px; padding: 12px 22px; border-radius: 10px; border: 1px solid var(--border-strong); box-shadow: var(--shadow-sm); }
.sh-root .btn-outline:hover{ transform: translateY(-2px); border-color: var(--teal-deep); color: var(--teal-deep); }
.sh-root .btn-outline:hover svg{ transform: translateX(3px); }
.sh-root .section{ padding: 78px 0; }
.sh-root .eyebrow{ display: inline-flex; align-items: center; gap: 9px; font-size: 16px; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; color: var(--orange); }
.sh-root .eyebrow::before, .sh-root .eyebrow::after{ content: ""; width: 24px; height: 2px; border-radius: 2px; background: var(--orange); opacity: .55; }
.sh-root .sec-head{ text-align: center; max-width: 760px; margin: 0 auto; }
.sh-root .sec-tag{ display: inline-flex; align-items: center; gap: 9px; font-size: 12.5px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; padding: 8px 16px; border-radius: 999px; }
.sh-root .sec-tag.orange{ color: var(--orange); background: var(--orange-soft); }
.sh-root .sec-tag.teal{ color: var(--teal-deep); background: #E2FBFB; }
.sh-root .sec-head h2{ font-size: clamp(30px, 3.4vw, 42px); line-height: 1.1; letter-spacing: -.02em; color: var(--navy); font-weight: 700; margin: 18px 0 0; text-wrap: balance; }
.sh-root .sec-head .lead{ font-size: 20px; color: var(--body); margin-top: 16px; text-wrap: pretty; }
.sh-root .hero{ text-align: center; padding: 64px 0 26px; }
.sh-root .hero h1{ font-size: clamp(32px, 4vw, 50px); line-height: 1.1; letter-spacing: -.02em; color: var(--navy); font-weight: 700; margin: 18px auto 0; max-width: none; text-wrap: normal; }
.sh-root .hero h1 em{ font-style: normal; color: var(--orange); }
.sh-root .hero p{ font-size: 20px; color: var(--body); max-width: 660px; margin: 22px auto 0; text-wrap: pretty; }
.sh-root .hero-actions{ display: flex; gap: 14px; justify-content: center; margin-top: 30px; flex-wrap: wrap; }
.sh-root .hero-trust{ display: inline-flex; align-items: center; gap: 26px; margin-top: 34px; font-size: 16px; font-weight: 600; color: var(--body-soft); flex-wrap: wrap; justify-content: center; }
.sh-root .hero-trust span{ display: inline-flex; align-items: center; gap: 8px; }
.sh-root .hero-trust svg{ flex: none; }
.sh-root .section--teal{ background: linear-gradient(180deg, var(--teal-bg) 0%, #ffffff 100%); position: relative; }
.sh-root .section--teal::before{ content: ""; position: absolute; inset: 0 0 auto 0; height: 1px; background: linear-gradient(90deg, transparent, rgba(17,214,213,.5), transparent); }
.sh-root .controls{ display: flex; align-items: center; justify-content: center; gap: 16px 28px; margin-top: 34px; flex-wrap: wrap; }
.sh-root .ctrl-group{ display: flex; flex-direction: column; align-items: center; gap: 9px; }
.sh-root .ctrl-label{ font-size: 11.5px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; color: var(--body-soft); }
.sh-root .seg{ display: inline-flex; background: var(--teal-card); border: 1px solid rgba(247,148,33,.4); border-radius: 12px; padding: 4px; gap: 3px; box-shadow: var(--shadow-sm); }
.sh-root .seg button{ font-family: inherit; font-size: 14.5px; font-weight: 600; color: var(--navy2); background: transparent; border: none; cursor: pointer; padding: 9px 18px; border-radius: 9px; transition: background .16s, color .16s, box-shadow .16s; white-space: nowrap; }
.sh-root .seg button .save{ font-size: 11px; font-weight: 700; color: var(--teal-deep); margin-left: 6px; }
.sh-root .seg button[aria-pressed="true"]{ background: var(--orange); color: #fff; box-shadow: inset 0 -2px 2px rgba(10,16,50,.07), 0 3px 6px rgba(7,0,110,.08); }
.sh-root .seg button[aria-pressed="true"] .save{ color: rgba(255,255,255,.92); }
.sh-root .seg button:not([aria-pressed="true"]):hover{ background: rgba(247,148,33,.08); }
.sh-root .controls-wrap{ display: flex; flex-direction: column; align-items: center; }
.sh-root .term-note{ margin: 18px auto 0; font-size: 16px; font-weight: 600; color: var(--body-soft); }
.sh-root .term-note b{ color: var(--navy2); font-weight: 700; }
.sh-root .setup-fold{ margin-top: 26px; border-top: 1px solid var(--border); padding-top: 22px; }
.sh-root .setup-fold summary{ list-style: none; cursor: pointer; display: flex; align-items: center; gap: 12px; font-size: 14.5px; font-weight: 700; color: var(--navy); }
.sh-root .setup-fold summary::-webkit-details-marker{ display: none; }
.sh-root .setup-fold summary .fee{ color: var(--orange); }
.sh-root .section--teal .setup-fold summary .fee{ color: var(--teal-deep); }
.sh-root .setup-fold summary .chev{ margin-left: auto; flex: none; width: 24px; height: 24px; border-radius: 50%; background: var(--orange-soft); display: grid; place-items: center; transition: transform .2s, background .2s; }
.sh-root .section--teal .setup-fold summary .chev{ background: #E2FBFB; }
.sh-root .setup-fold summary .chev svg{ stroke: var(--orange); }
.sh-root .section--teal .setup-fold summary .chev svg{ stroke: var(--teal-deep); }
.sh-root .setup-fold[open] summary .chev{ transform: rotate(45deg); background: var(--orange); }
.sh-root .section--teal .setup-fold[open] summary .chev{ background: var(--teal-deep); }
.sh-root .setup-fold[open] summary .chev svg{ stroke: #fff; }
.sh-root .setup-fold .sf-body{ margin-top: 20px; }
.sh-root .setup-fold .sf-intro{ font-size: 16px; color: var(--body); margin-bottom: 18px; }
.sh-root .setup-fold .setup-grid{ display: grid; grid-template-columns: repeat(2, 1fr); gap: 14px 36px; }
.sh-root .cards{ display: grid; grid-template-columns: repeat(4, 1fr); gap: 18px; margin-top: 44px; align-items: stretch; }
.sh-root .card{ position: relative; display: flex; flex-direction: column; background: var(--card); border: 1px solid var(--border); border-radius: 22px; padding: 28px 24px 26px; box-shadow: var(--shadow-sm); transition: transform .2s ease, box-shadow .2s ease, border-color .2s; }
.sh-root .card:hover{ transform: translateY(-5px); box-shadow: var(--shadow-md); }
.sh-root .card--pop{ border: 2px solid var(--orange); box-shadow: var(--shadow-orange); transform: translateY(-10px); }
.sh-root .card--pop:hover{ transform: translateY(-14px); }
.sh-root .section--teal .card--pop{ border-color: var(--teal); background: var(--teal-card); box-shadow: var(--shadow-teal); }
.sh-root .badge{ position: absolute; top: -13px; left: 50%; transform: translateX(-50%); display: inline-flex; align-items: center; gap: 6px; white-space: nowrap; font-size: 11px; font-weight: 700; letter-spacing: .07em; text-transform: uppercase; color: #fff; background: var(--orange); padding: 7px 14px; border-radius: 999px; box-shadow: 0 8px 16px -6px rgba(247,148,33,.8); }
.sh-root .section--teal .badge{ background: var(--teal-deep); box-shadow: 0 8px 16px -6px rgba(17,214,213,.8); }
.sh-root .card-spendlabel{ font-size: 11px; font-weight: 700; letter-spacing: .11em; text-transform: uppercase; color: var(--orange); }
.sh-root .section--teal .card-spendlabel{ color: var(--teal-deep); }
.sh-root .card-band{ font-size: 20px; font-weight: 700; color: var(--navy2); margin-top: 7px; letter-spacing: -.01em; }
.sh-root .price-row{ display: flex; align-items: baseline; gap: 5px; margin-top: 16px; }
.sh-root .price{ font-size: 38px; font-weight: 700; color: var(--navy); letter-spacing: -.03em; line-height: 1; }
.sh-root .price-per{ font-size: 14.5px; font-weight: 600; color: var(--body-soft); }
.sh-root .price-note{ font-size: 12.5px; color: var(--body-soft); margin-top: 8px; font-weight: 500; min-height: 17px; }
.sh-root .price-note b{ color: var(--teal-deep); font-weight: 700; }
.sh-root .card .cta{ display: flex; align-items: center; justify-content: center; gap: 8px; width: 100%; text-align: center; text-decoration: none; cursor: pointer; font-family: inherit; font-size: 14.5px; font-weight: 600; padding: 13px 14px; border-radius: 11px; margin-top: 22px; transition: transform .16s, box-shadow .16s, background .16s, border-color .16s, color .16s; }
.sh-root .cta--ghost{ background: linear-gradient(#fff, #FBFBFE); color: var(--navy2); border: 1px solid var(--border-strong); box-shadow: inset 0 3px 6px rgba(255,255,255,.4), inset 0 -2px 2px rgba(27,35,85,.06), 0 3px 6px rgba(7,0,110,.03); }
.sh-root .cta--ghost:hover{ transform: translateY(-2px); border-color: var(--orange); color: var(--orange); }
.sh-root .cta--solid{ background: var(--orange); color: #fff; border: none; box-shadow: 0 10px 22px -10px rgba(247,148,33,.8); }
.sh-root .cta--solid:hover{ transform: translateY(-2px); background: var(--orange-d); box-shadow: 0 16px 28px -10px rgba(247,148,33,.9); }
.sh-root .cta svg{ flex: none; transition: transform .16s; }
.sh-root .card .cta:hover svg{ transform: translateX(3px); }
.sh-root .features-panel{ margin-top: 26px; background: var(--card); border: 1px solid var(--border); border-radius: 22px; box-shadow: var(--shadow-sm); padding: 34px 40px 30px; position: relative; overflow: hidden; }
.sh-root .features-panel::before{ content: ""; position: absolute; left: 0; top: 0; bottom: 0; width: 5px; background: var(--orange); }
.sh-root .section--teal .features-panel::before{ background: var(--teal); }
.sh-root .fp-head{ display: flex; align-items: baseline; justify-content: space-between; gap: 20px; flex-wrap: wrap; }
.sh-root .fp-title{ font-size: 16px; font-weight: 700; color: var(--navy); }
.sh-root .fp-title .pill{ font-size: 11px; font-weight: 700; color: var(--teal-deep); background: #E2FBFB; padding: 4px 10px; border-radius: 999px; margin-left: 10px; letter-spacing: .04em; vertical-align: middle; }
.sh-root .fp-setup{ font-size: 16px; color: var(--body-soft); font-weight: 500; }
.sh-root .fp-setup b{ color: var(--navy2); font-weight: 700; }
.sh-root .fp-grid{ display: grid; grid-template-columns: repeat(3, 1fr); gap: 30px 40px; margin-top: 26px; }
.sh-root .fp-col h4{ font-size: 11.5px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; color: var(--orange); margin-bottom: 16px; padding-bottom: 12px; border-bottom: 1px solid var(--border); }
.sh-root .section--teal .fp-col h4{ color: var(--teal-deep); }
.sh-root .feat{ list-style: none; display: flex; flex-direction: column; gap: 14px; }
.sh-root .feat li{ position: relative; padding-left: 30px; font-size: 14px; color: var(--navy2); font-weight: 500; line-height: 1.4; }
.sh-root .feat li::before{ content: ""; position: absolute; left: 0; top: 0; width: 19px; height: 19px; background: var(--check-orange) no-repeat center / contain; }
.sh-root .section--teal .feat li::before{ background: var(--check-teal) no-repeat center / contain; }
.sh-root .channels{ margin-top: 40px; text-align: center; }
.sh-root .channels-label{ font-size: 12px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; color: var(--body-soft); }
.sh-root .channels-row{ display: flex; flex-wrap: wrap; justify-content: center; gap: 10px; margin-top: 16px; }
.sh-root .chan{ font-size: 16px; font-weight: 600; color: var(--navy2); background: #fff; border: 1px solid var(--border-strong); border-radius: 999px; padding: 9px 18px; box-shadow: var(--shadow-sm); }
.sh-root .proof{ padding: 26px 0 6px; }
.sh-root .proof-grid{ display: grid; grid-template-columns: 1fr 1fr; gap: 22px; align-items: stretch; }
.sh-root .quote-card{ background: var(--card); border: 1px solid var(--border); border-radius: 22px; box-shadow: var(--shadow-sm); padding: 32px 34px; display: flex; flex-direction: column; }
.sh-root .quote-person{ display: flex; align-items: center; gap: 14px; }
.sh-root .avatar{ width: 50px; height: 50px; border-radius: 50%; display: grid; place-items: center; font-weight: 700; font-size: 17px; color: #fff; flex: none; background: linear-gradient(135deg, var(--navy2), #2e6fa3); }
.sh-root .avatar.t2{ background: linear-gradient(135deg, var(--teal-deep), #5fd8d7); }
.sh-root .quote-person .pn{ font-size: 15.5px; font-weight: 700; color: var(--navy); }
.sh-root .quote-person .pr{ font-size: 16px; color: var(--body-soft); font-weight: 500; }
.sh-root .quote-text{ font-size: 17px; line-height: 1.55; color: var(--navy2); font-weight: 500; margin-top: 20px; text-wrap: pretty; }
.sh-root .quote-text::before{ content: "\201C"; color: var(--orange); font-size: 40px; line-height: 0; vertical-align: -8px; margin-right: 4px; font-family: Georgia, serif; }
.sh-root .result-card{ background: radial-gradient(120% 130% at 85% 0%, #114577 0%, var(--navy) 48%, var(--navy-deep) 100%); border-radius: 22px; padding: 32px 34px; color: #fff; box-shadow: var(--shadow-md); display: flex; flex-direction: column; gap: 22px; }
.sh-root .result-headline{ font-size: 22px; font-weight: 700; line-height: 1.3; }
.sh-root .result-headline b{ color: var(--teal); }
.sh-root .result-stats{ display: flex; flex-direction: column; gap: 13px; }
.sh-root .result-stats li{ list-style: none; display: flex; align-items: flex-start; gap: 11px; font-size: 14.5px; font-weight: 500; color: #d6e4f2; }
.sh-root .result-stats li::before{ content: ""; width: 19px; height: 19px; flex: none; margin-top: 1px; background: var(--check-orange) no-repeat center / contain; }
.sh-root .result-stats li b{ color: #fff; font-weight: 700; }
.sh-root .result-chans{ display: flex; align-items: center; gap: 10px; padding-top: 4px; }
.sh-root .result-chans .lbl{ font-size: 12.5px; color: #9db6d1; font-weight: 600; }
.sh-root .cbadge{ width: 30px; height: 30px; border-radius: 50%; background: #fff; display: grid; place-items: center; font-size: 12px; font-weight: 800; color: var(--navy); }
.sh-root .setup-wrap{ max-width: 760px; margin: 44px auto 0; }
.sh-root .setup-card{ background: var(--card); border: 1px solid var(--border); border-radius: 24px; box-shadow: var(--shadow-md); overflow: hidden; }
.sh-root .setup-top{ display: flex; align-items: center; justify-content: space-between; gap: 24px; padding: 34px 40px; border-bottom: 1px solid var(--border); flex-wrap: wrap; }
.sh-root .setup-price{ display: flex; align-items: baseline; gap: 7px; }
.sh-root .setup-price .p{ font-size: 48px; font-weight: 700; color: var(--navy); letter-spacing: -.03em; line-height: 1; }
.sh-root .setup-price .u{ font-size: 14px; font-weight: 600; color: var(--body-soft); }
.sh-root .setup-sub{ font-size: 16px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; color: var(--orange); margin-top: 8px; }
.sh-root .setup-body{ padding: 30px 40px 34px; }
.sh-root .setup-body h4{ font-size: 16px; font-weight: 700; color: var(--navy); margin-bottom: 20px; }
.sh-root .setup-grid{ display: grid; grid-template-columns: repeat(2, 1fr); gap: 14px 36px; }
.sh-root .ala-grid{ display: grid; grid-template-columns: repeat(4, 1fr); gap: 18px; margin-top: 44px; }
.sh-root .ala-card{ background: var(--card); border: 1px solid var(--border); border-radius: 18px; box-shadow: var(--shadow-sm); padding: 26px 24px; display: flex; flex-direction: column; gap: 6px; transition: transform .18s, box-shadow .18s; }
.sh-root .ala-card:hover{ transform: translateY(-4px); box-shadow: var(--shadow-md); }
.sh-root .ala-card .nm{ font-size: 16px; font-weight: 700; color: var(--navy); line-height: 1.3; min-height: 42px; }
.sh-root .ala-card .pr{ font-size: 28px; font-weight: 700; color: var(--orange); letter-spacing: -.02em; margin-top: 4px; }
.sh-root .ala-card .pr small{ font-size: 14px; font-weight: 600; color: var(--body-soft); }
.sh-root .ala-note{ text-align: center; font-size: 16px; color: var(--body-soft); margin-top: 22px; }
.sh-root .ala-sub{ margin-top: 36px; }
.sh-root .ala-sub-h{ text-align: center; font-size: 16px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: var(--body-soft); margin-bottom: 20px; }
.sh-root .ala-ugc{ display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; }
.sh-root .ugc-card{ background: linear-gradient(180deg, var(--teal-bg), #fff); border: 1px solid #D6F5F5; border-radius: 18px; padding: 24px; text-align: center; }
.sh-root .ugc-card .tier{ font-size: 12px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: var(--teal-deep); }
.sh-root .ugc-card .nm{ font-size: 16px; font-weight: 700; color: var(--navy); margin-top: 6px; }
.sh-root .ugc-card .pr{ font-size: 26px; font-weight: 700; color: var(--navy); margin-top: 8px; }
.sh-root .ugc-card .pr small{ font-size: 16px; font-weight: 600; color: var(--body-soft); }
.sh-root .cr-block{ margin-top: 42px; }
.sh-root .cr-head{ margin-bottom: 18px; }
.sh-root .cr-head .row{ display: flex; align-items: baseline; gap: 14px; flex-wrap: wrap; }
.sh-root .cr-head h3{ font-size: 21px; font-weight: 700; color: var(--navy); letter-spacing: -.015em; }
.sh-root .cr-head .base-note{ font-size: 16px; font-weight: 600; color: var(--body-soft); }
.sh-root .cr-feats{ display: flex; flex-wrap: wrap; gap: 7px 18px; margin-top: 12px; }
.sh-root .cr-feats span{ position: relative; padding-left: 22px; font-size: 16px; font-weight: 500; color: var(--navy2); }
.sh-root .cr-feats span::before{ content: ""; position: absolute; left: 0; top: 1px; width: 15px; height: 15px; background: var(--check-teal) no-repeat center / contain; }
.sh-root .cr-lp{ display: grid; grid-template-columns: 1fr 1fr; gap: 18px; }
.sh-root .cr-lp-card{ background: var(--card); border: 1px solid var(--border); border-radius: 20px; box-shadow: var(--shadow-sm); padding: 30px 32px; display: flex; flex-direction: column; transition: transform .18s, box-shadow .18s; }
.sh-root .cr-lp-card:hover{ transform: translateY(-4px); box-shadow: var(--shadow-md); }
.sh-root .cr-lp-card.pop{ border-color: var(--teal); box-shadow: 0 18px 44px -18px rgba(27,210,208,.5); }
.sh-root .cr-tier-tag{ font-size: 11.5px; font-weight: 700; letter-spacing: .09em; text-transform: uppercase; color: var(--teal-deep); }
.sh-root .cr-lp-card .pr{ font-size: 34px; font-weight: 700; color: var(--navy); letter-spacing: -.03em; margin-top: 7px; line-height: 1; }
.sh-root .cr-lp-card .pr small{ font-size: 14px; font-weight: 600; color: var(--body-soft); letter-spacing: 0; }
.sh-root .cr-lp-card .feat{ margin-top: 22px; }
.sh-root .cr-cta{ display: flex; flex-wrap: wrap; gap: 12px; margin-top: 22px; }
.sh-root .cr-tiers{ display: grid; gap: 16px; }
.sh-root .cr-tiers.t4{ grid-template-columns: repeat(4, 1fr); }
.sh-root .cr-tiers.t3{ grid-template-columns: repeat(3, 1fr); }
.sh-root .cr-tier{ position: relative; background: linear-gradient(180deg, var(--teal-bg), #fff); border: 1px solid #D6F5F5; border-radius: 18px; padding: 26px 22px 24px; text-align: center; transition: transform .18s, box-shadow .18s; }
.sh-root .cr-tier:hover{ transform: translateY(-4px); box-shadow: var(--shadow-md); }
.sh-root .cr-tier.best{ border-color: var(--teal); box-shadow: 0 16px 38px -18px rgba(27,210,208,.55); }
.sh-root .cr-tier .qty{ font-size: 16.5px; font-weight: 700; color: var(--navy); }
.sh-root .cr-tier .pr{ font-size: 30px; font-weight: 700; color: var(--navy); letter-spacing: -.02em; margin-top: 10px; line-height: 1; }
.sh-root .cr-tier .per{ font-size: 12.5px; color: var(--body-soft); font-weight: 600; margin-top: 9px; }
.sh-root .cr-tier .save{ display: inline-block; margin-top: 13px; font-size: 11.5px; font-weight: 700; letter-spacing: .03em; color: var(--teal-deep); background: #E2FBFB; border: 1px solid rgba(27,210,208,.32); border-radius: 999px; padding: 4px 13px; }
.sh-root .cr-tier .save.base{ color: var(--body-soft); background: #fff; border-color: var(--border-strong); }
.sh-root .range-pick{ margin-top: 40px; text-align: center; }
.sh-root .range-pick .rp-label{ font-size: 12.5px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; color: var(--teal-deep); }
.sh-root .range-pick .rp-sub{ font-size: 16px; color: var(--body); margin-top: 8px; }
.sh-root .range-tabs{ display: flex; flex-wrap: wrap; justify-content: center; gap: 8px; margin-top: 20px; padding: 8px; background: #fff; border: 1px solid #D6F5F5; border-radius: 18px; box-shadow: var(--shadow-sm); }
.sh-root .rtab{ font-family: inherit; cursor: pointer; border: 1px solid transparent; background: transparent; color: var(--navy2); font-size: 15px; font-weight: 600; letter-spacing: -.01em; padding: 13px 20px; min-height: 46px; border-radius: 12px; transition: background .2s ease, color .2s ease, border-color .2s ease, box-shadow .2s ease; white-space: nowrap; }
.sh-root .rtab:hover[aria-selected="false"]{ background: #F2FEFE; border-color: #D6F5F5; }
.sh-root .rtab[aria-selected="true"]{ background: var(--orange); color: #fff; box-shadow: 0 6px 16px -6px rgba(242,144,33,.7); }
.sh-root .rtab:focus-visible{ outline: 3px solid var(--teal-deep); outline-offset: 2px; }
.sh-root .range-note{ margin: 18px auto 0; font-size: 16px; font-weight: 600; color: var(--body-soft); }
.sh-root .range-note b{ color: var(--navy2); font-weight: 700; }
.sh-root .plans{ display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; margin-top: 34px; align-items: stretch; }
.sh-root .plan{ position: relative; display: flex; flex-direction: column; background: var(--card); border: 1px solid var(--border); border-radius: 22px; box-shadow: var(--shadow-sm); padding: 32px 30px 30px; transition: transform .2s ease, box-shadow .2s ease; }
.sh-root .plan:hover{ transform: translateY(-5px); box-shadow: var(--shadow-md); }
.sh-root .plan-name{ font-size: 20px; font-weight: 700; color: var(--navy); letter-spacing: -.015em; }
.sh-root .plan-desc{ font-size: 16px; color: var(--body); margin-top: 8px; min-height: 3em; text-wrap: pretty; }
.sh-root .plan-price-row{ display: flex; align-items: baseline; gap: 7px; margin-top: 20px; }
.sh-root .plan-price{ font-size: 44px; font-weight: 700; color: var(--navy); letter-spacing: -.035em; line-height: 1; font-variant-numeric: tabular-nums; transition: opacity .2s ease; }
.sh-root .plan-price.is-swapping{ opacity: 0; }
.sh-root .plan-per{ font-size: 16px; font-weight: 600; color: var(--body-soft); }
.sh-root .plan-for{ font-size: 16px; color: var(--body-soft); margin-top: 10px; }
.sh-root .plan-for b{ color: var(--navy2); font-weight: 700; }
.sh-root .plan .cta{ margin-top: 22px; }
.sh-root .plan-feats{ margin-top: 24px; padding-top: 22px; border-top: 1px solid var(--border); }
.sh-root .plan-feats .fh{ font-size: 12.5px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: var(--body-soft); margin-bottom: 14px; }
.sh-root .plan--alt{ border-color: var(--teal); box-shadow: 0 18px 44px -20px rgba(27,210,208,.5); }
.sh-root .plan--flat .plan-price{ font-size: 34px; }
.sh-root .plan-tag{ display: inline-flex; align-self: flex-start; font-size: 11.5px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: var(--teal-deep); background: #E2FBFB; border: 1px solid rgba(27,210,208,.32); border-radius: 999px; padding: 5px 12px; margin-bottom: 14px; }
.sh-root .plan-alt-price{ margin-top: 14px; padding-top: 14px; border-top: 1px dashed var(--border-strong); font-size: 16px; color: var(--body); }
.sh-root .plan-alt-price b{ color: var(--navy); font-weight: 700; }
@media (prefers-reduced-motion: reduce){
.sh-root .rtab, .sh-root .plan, .sh-root .plan-price{ transition: none; }
.sh-root .plan:hover{ transform: none; }
.sh-root .plan-price.is-swapping{ opacity: 1; }
}
.sh-root .faq-wrap{ max-width: 820px; margin: 44px auto 0; display: flex; flex-direction: column; gap: 14px; }
.sh-root .faq{ background: var(--card); border: 1px solid var(--border); border-radius: 16px; box-shadow: var(--shadow-sm); overflow: hidden; }
.sh-root .faq summary{ list-style: none; cursor: pointer; display: flex; align-items: center; justify-content: space-between; gap: 18px; padding: 22px 26px; font-size: 16px; font-weight: 600; color: var(--navy); }
.sh-root .faq summary::-webkit-details-marker{ display: none; }
.sh-root .faq summary .ic{ flex: none; width: 26px; height: 26px; border-radius: 50%; background: var(--orange-soft); display: grid; place-items: center; transition: transform .2s, background .2s; }
.sh-root .faq summary .ic svg{ stroke: var(--orange); }
.sh-root .faq[open] summary .ic{ transform: rotate(45deg); background: var(--orange); }
.sh-root .faq[open] summary .ic svg{ stroke: #fff; }
.sh-root .faq .faq-body{ padding: 0 26px 24px; font-size: 15px; line-height: 1.65; color: var(--body); }
.sh-root .faq .faq-body b{ color: var(--navy2); font-weight: 600; }
.sh-root .results{ background: radial-gradient(130% 90% at 50% -10%, #114577 0%, var(--navy) 45%, var(--navy-deep) 100%); padding: 84px 0; position: relative; }
.sh-root .results h2{ text-align: center; color: #fff; font-size: clamp(28px, 3.2vw, 40px); font-weight: 700; line-height: 1.15; letter-spacing: -.02em; max-width: 760px; margin: 0 auto; text-wrap: balance; }
.sh-root .results .eyebrow{ color: var(--teal); justify-content: center; display: flex; }
.sh-root .results .eyebrow::before, .sh-root .results .eyebrow::after{ background: var(--teal); }
.sh-root .results-head{ text-align: center; }
.sh-root .results-grid{ columns: 3; column-gap: 22px; margin-top: 48px; }
.sh-root .tcard{ break-inside: avoid; background: rgba(255,255,255,.05); border: 1px solid rgba(255,255,255,.12); border-top: 3px solid var(--orange); border-radius: 18px; padding: 24px 26px; margin-bottom: 22px; backdrop-filter: blur(4px); }
.sh-root .tcard:nth-of-type(even){ border-top-color: var(--teal); }
.sh-root .tcard:nth-of-type(even) .tp .avatar{ background: linear-gradient(135deg, var(--teal-deep), #5fd8d7); }
.sh-root .tcard .tp{ display: flex; align-items: center; gap: 12px; }
.sh-root .tcard .tp .avatar{ width: 42px; height: 42px; font-size: 15px; }
.sh-root .tcard .tp .pn{ font-size: 14.5px; font-weight: 700; color: #fff; }
.sh-root .tcard .tp .pr{ font-size: 12px; color: #a9c1da; font-weight: 500; }
.sh-root .tcard p{ font-size: 14px; line-height: 1.6; color: #d3e0ee; margin-top: 16px; font-weight: 400; }
.sh-root .cta-band{ background: linear-gradient(120deg, var(--orange) 0%, #ff8a3c 100%); padding: 70px 0; text-align: center; }
.sh-root .cta-band h2{ color: #fff; font-size: clamp(26px, 3vw, 38px); font-weight: 700; line-height: 1.2; max-width: 740px; margin: 0 auto; letter-spacing: -.01em; text-wrap: balance; }
.sh-root .cta-band .btn-navy{ margin-top: 28px; }
.sh-root .cta-band .fine{ color: rgba(255,255,255,.9); font-size: 16px; margin-top: 20px; max-width: 560px; margin-left: auto; margin-right: auto; font-weight: 500; }
.sh-root .footer{ background: var(--navy-deep); color: #c2d2e2; padding: 64px 0 40px; }
.sh-root .footer-top{ display: grid; grid-template-columns: 1.4fr 1fr 1fr 1fr; gap: 40px; }
.sh-root .footer .brand-name{ color: #fff; }
.sh-root .footer-blurb{ font-size: 14px; line-height: 1.6; color: #93aac3; margin-top: 18px; max-width: 280px; }
.sh-root .footer-col h5{ font-size: 16px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: #fff; margin-bottom: 18px; }
.sh-root .footer-col a{ display: block; font-size: 14px; color: #aebfd3; text-decoration: none; margin-bottom: 12px; transition: color .15s; }
.sh-root .footer-col a:hover{ color: var(--orange); }
.sh-root .footer-bottom{ display: flex; align-items: center; justify-content: space-between; gap: 20px; margin-top: 48px; padding-top: 26px; border-top: 1px solid rgba(255,255,255,.1); flex-wrap: wrap; font-size: 16px; color: #8aa1bb; }
.sh-root .footer-bottom .rev{ display: inline-flex; align-items: center; gap: 8px; }
.sh-root .stars{ color: var(--orange); letter-spacing: 2px; }
.sh-root .platforms{ margin-top: 44px; text-align: center; }
.sh-root .platforms-label{ font-size: 12px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; color: var(--body-soft); }
.sh-root .platforms-row{ display: flex; flex-wrap: wrap; justify-content: center; align-items: center; gap: 16px; margin-top: 18px; }
.sh-root .plogo{ width: 58px; height: 58px; border-radius: 50%; background: #fff; border: 1px solid var(--border-strong); box-shadow: var(--shadow-sm); display: grid; place-items: center; overflow: hidden; transition: transform .18s, box-shadow .18s; }
.sh-root .plogo:hover{ transform: translateY(-3px); box-shadow: var(--shadow-md); }
.sh-root .plogo img{ width: 100%; height: 100%; object-fit: contain; padding: 9px; }
.sh-root .plogo .pf{ font-size: 9.5px; font-weight: 700; color: var(--navy2); text-align: center; line-height: 1.05; padding: 4px; letter-spacing: .01em; }
.sh-root .section--teal .plogo{ border-color: #D6F5F5; }
.sh-root .plogo--lg{ width: 64px; height: 64px; }
.sh-root .platforms-focus{ align-self: center; font-size: 18px; font-weight: 700; color: var(--navy); letter-spacing: -.01em; }
.sh-root .platforms-note{ max-width: 560px; margin: 14px auto 0; font-size: 16px; color: var(--body-soft); font-weight: 500; line-height: 1.5; text-wrap: pretty; }
.sh-root .avatar{ position: relative; overflow: hidden; }
.sh-root .avatar img{ position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; border-radius: 50%; }
.sh-root .tlogo{ display: inline-flex; align-items: center; height: 24px; margin-top: 16px; }
.sh-root .tlogo img{ height: 100%; width: auto; max-width: 132px; object-fit: contain; filter: brightness(0) invert(1); opacity: .9; }
.sh-root .tlogo .cn{ font-size: 16px; font-weight: 700; color: #fff; opacity: .92; letter-spacing: .01em; }
.sh-root .tcard.solid .tlogo img{ filter: brightness(0) invert(1); opacity: .95; }
.sh-root .qlogo{ display: inline-flex; align-items: center; height: 28px; margin-top: 4px; }
.sh-root .qlogo img{ height: 100%; width: auto; max-width: 150px; object-fit: contain; }
.sh-root .qlogo .cn{ font-size: 14.5px; font-weight: 700; color: var(--navy2); }
@media (max-width: 1080px){
.sh-root .cards, .sh-root .ala-grid{ grid-template-columns: repeat(2, 1fr); }
.sh-root .plans{ grid-template-columns: repeat(2, 1fr); }
.sh-root .rtab{ font-size: 14.5px; padding: 12px 16px; }
.sh-root .cr-tiers.t4{ grid-template-columns: repeat(2, 1fr); }
.sh-root .fp-grid{ grid-template-columns: repeat(2, 1fr); }
.sh-root .results-grid{ columns: 2; }
.sh-root .card--pop{ transform: none; }
.sh-root .card--pop:hover{ transform: translateY(-5px); }
}
@media (max-width: 760px){
.sh-root .wrap, .sh-root .nav-inner{ padding-left: 22px; padding-right: 22px; }
.sh-root .nav-links a:not(.btn){ display: none; }
.sh-root .cards, .sh-root .ala-grid, .sh-root .ala-ugc, .sh-root .fp-grid, .sh-root .setup-grid, .sh-root .proof-grid, .sh-root .footer-top{ grid-template-columns: 1fr; columns: 1; }
.sh-root .plans{ grid-template-columns: 1fr; }
.sh-root .range-tabs{ flex-wrap: nowrap; overflow-x: auto; justify-content: flex-start; scroll-snap-type: x mandatory; -webkit-overflow-scrolling: touch; border-radius: 14px; }
.sh-root .range-tabs::-webkit-scrollbar{ height: 0; }
.sh-root .rtab{ scroll-snap-align: center; flex: 0 0 auto; }
.sh-root .plan-desc{ min-height: 0; }
.sh-root .cr-lp, .sh-root .cr-tiers.t4, .sh-root .cr-tiers.t3{ grid-template-columns: 1fr; }
.sh-root .results-grid{ columns: 1; }
.sh-root .section{ padding: 56px 0; }
}































# Simple, transparent pricing** (like every agency should have)


One flat monthly fee with every ad channel included** — no per-channel pricing and no setup fees. Your cost is set by just two things: your monthly ad spend, and whether you want creative production included.





        Choose your monthly ad spend


Select the range that matches your budget — every price below updates instantly.



          **Up to $10k
          $10k – $25k
          $25k – $50k
          $50k – $100k
          $100k – $150k
          $150k – $200k
          $200k+



All ad channels included · one flat fee · 3-month term**






          Growth Team


Your senior team owning strategy and execution across every ad channel.


$4,500/month


For **Up to $10k** monthly ad spend



            What's included


- Every ad channel included — paid search & paid social
- Senior Account Strategist, Project Manager & Campaign Manager
- Bi-weekly strategy calls
- Competitor conquesting & ABM campaigns
- Conversion rate optimization program
- Board-ready reporting in Looker Studio & HubSpot






Growth Team + Creative


Everything in Growth Team, plus a dedicated creative engine built in.


$6,000/month


For **Up to $10k** monthly ad spend



            Everything in Growth Team, plus


- Senior Designer
- Ad copywriting
- 8 new creatives (static & motion graphic)
- Creative delivered in any dimensions your active campaigns require
- 2 custom landing pages included during onboarding
- Ongoing CRO and incremental landing page testing





          Same price at every range

Programmatic SEO


High-intent content at scale, built for Google *and* AI search.


$5,000/month add-on


Or **$6,000/month** stand-alone — no Growth Team retainer required.



            What's included


- SEO & AEO strategy
- Programmatic keyword and topic research
- High-intent content creation at scale (150 articles minimum)
- Content optimized for Google and AI search
- Technical implementation
- Publishing, ongoing optimization & performance reporting







        Every one of these is included — at no extra cost



          ![Google Ads](https://www.saashero.net/wp-content/uploads/2026/02/ADS-LOGOS_Google-Ads-Circle-5-scaled.png)Google Ads
          ![Microsoft Ads](https://www.saashero.net/wp-content/uploads/2026/02/ADS-LOGOS_Microsoft-Circle-4-scaled.png)Microsoft Ads
          ![LinkedIn](https://www.saashero.net/wp-content/uploads/2026/02/ADS-LOGOS_Linkedin-Circle-4-scaled.png)LinkedIn
          ![Meta](https://www.saashero.net/wp-content/uploads/2026/02/ADS-LOGOS_Meta-Circle-1-scaled.png)Meta
          ![Reddit](https://www.saashero.net/wp-content/uploads/2026/02/ADS-LOGOS_Reddit-Circle-1-scaled.png)Reddit
          ![X](https://www.saashero.net/wp-content/uploads/2026/02/ADS-LOGOS_X-1-scaled.png)X
          ![Gartner / Capterra](https://www.saashero.net/wp-content/uploads/2026/02/ADS-LOGOS_Gartner-1-1-scaled.png)Gartner


















            AF![Adam Fox](https://www.saashero.net/wp-content/uploads/2023/12/tnpi4n-image-10_1000000000000000000028.png)


Adam Fox

CEO · TripMaster



SaaS Hero fuels our consistent growth. Our sales team couldn't be more thankful for the work they do for us.

          ![TripMaster](https://www.saashero.net/wp-content/uploads/2024/02/Tripmaster.png)TripMaster



          TripMaster adds **$504,758** in Net New ARR in one year


- Avg. conversion rate from paid search: **20%**
- Return on investment: **650% ROI**
- Payback period: **80 days**



            Growth channels
            GMin▶

























        Creative Services

## Need something specific? Add it on.


We take ownership of design execution so every campaign is backed by strategic, high-performing visuals that drive results. Copy is written by humans — never ChatGPT — with unlimited revisions, and bulk packages unlock up to 20% off.








### Landing Page Design

Conversion-built, with a first draft in Figma





            Basic
            $750 / landing page


- Custom copy & custom design
- Static form
- Static images
- Unlimited revisions
- Monthly A/B testing
- Figma mockup
- Free hosting on Unbounce




            Advanced
            $950 / landing page


- Custom copy & custom design
- Multi-step form
- Motion graphic images
- Unlimited revisions
- Monthly A/B testing
- Figma mockup
- Free hosting on Unbounce





          [Schedule a discovery call ](https://www.saashero.net/schedule-a-discovery-call/)
          [See samples](https://www.saashero.net/landing-pages-sample)









### Static Image Creative

From $60 / image · buy in bulk to save



            Ad copy includedAny dimension requestedCanva mockups






            5 creatives


$300


$60 / image

            Base rate



            10 creatives


$540


$54 / image

            Save 10%



            15 creatives


$765


$51 / image

            Save 15%



            20 creatives


$960


$48 / image

            Save 20%




          [Schedule a discovery call ](https://www.saashero.net/schedule-a-discovery-call/)
          [See samples](https://www.saashero.net/static-samples/)









### Motion Graphic Images

From $167 / creative · buy in bulk to save



            Ad copy includedCustom designMotion graphics1080 × 1080px






            3 creatives


$500


$167 / creative

            Base rate



            6 creatives


$900


$150 / creative

            Save 10%



            9 creatives


$1,275


$142 / creative

            Save 15%



            12 creatives


$1,600


$133 / creative

            Save 20%




          [Schedule a discovery call ](https://www.saashero.net/schedule-a-discovery-call/)









### UGC-Style Video

From $297 / video · buy in bulk to save



            Ad copy includedCustom scriptTailored creator selectionFull editingVertical format3 revisions






            1 video


$350


$350 / video

            Base rate



            2 videos


$630


$315 / video

            Save 10%



            3 videos


$890


$297 / video

            Save 15%




          [Schedule a discovery call ](https://www.saashero.net/schedule-a-discovery-call/)





Landing pages include unlimited revisions and a first draft in Figma — we never activate anything until you give the final OK.























          Playvox cuts cost per SQL **10×** on Google Ads


- **10×** decrease in cost per SQL from paid search
- **163%** increase in total lead volume
- Driven by negative-keyword hygiene & competitor conquesting



            Growth channels
            Gin






            KW![Kristin Wagner](https://www.saashero.net/wp-content/uploads/2024/02/VP.png)


Kristin Wagner

VP, Demand Generation · Playvox



SaaS Hero delivers more qualified paid search leads in one month than what our former agency delivered in a quarter.

          ![Playvox](https://www.saashero.net/wp-content/uploads/2023/12/Playvox-logo-02.svg)Playvox























        FAQs

## Questions, answered






          What's included in the Growth Team?
          You get a dedicated senior team — a **Senior Account Strategist, a Project Manager, and a Campaign Manager** — owning both strategy and day-to-day execution, plus bi-weekly strategy calls. **Every ad channel is included in the flat fee**, so we run paid search and paid social wherever your buyers are without changing your price. We handle competitor conquesting and ABM, and report on revenue-first metrics in Looker Studio and HubSpot. Choose the **+ Creative** package and a Senior Designer, ad copywriting, up to 8 new creative concepts a month and 2 custom landing pages come with it.



          How long is the agreement?

We keep it simple: **one 3-month agreement**, billed monthly. No long-term lock-ins and no confusing tiered contracts — just a clear, predictable retainer based on your ad-channel count and monthly ad spend.



          What counts as an “ad channel”?

Any digital advertising platform. The channels we manage most often are **Google Ads, Microsoft Ads, LinkedIn, Meta, Reddit, X, and the Gartner Network (e.g. Capterra Ads)**. With the Growth Team model, **every channel is included in your flat fee** — adding or swapping channels never changes your price.



          How does the pricing work?

Two things set your monthly retainer: your **monthly ad spend** band, and whether you choose the package **with creative production included**. That's it — every ad channel is covered by the same flat fee, so there's nothing else to add up. Use the package toggle above to see your exact rate.



          Where do you build landing pages?

We build conversion-focused landing pages with unlimited revisions and **custom copy written by a human** — not ChatGPT. You'll get a first draft in Figma and can request as many edits as you'd like. We never activate a page until you give the final OK.



          How long does it take to launch campaigns?

We typically buffer **~3–4 weeks** from the project kickoff call to launching across channels. That can move faster or slower depending mostly on approvals from your team — the faster we get feedback, the faster we launch.



          How long does it take to see results?

For paid search (Google or Microsoft Ads), we can start to see positive results in **under 30 days**. Clients typically see up to a **3× improvement in SQL volume in ~90 days**, especially when we take over an account with some history.



          I have a HubSpot attribution problem — can you help?

Yes. Every dollar spent without proper attribution is wasted. We connect campaigns directly to your CRM and report on **Net New ARR, pipeline value, SQLs and payback** in Looker Studio and HubSpot — not vanity metrics.
























        Results

## Here are some of the results we've achieved for B2B companies just like yours






          SV![Shannon Vander Meulen](https://www.saashero.net/wp-content/uploads/2024/07/shannon-1.png)

Shannon Vander Meulen

Chief Marketing Officer


They are just really transparent and also very responsive. We find with SaaS Hero that they are able to explain not just what they are doing, but also the why.

          ![WaitWell](https://www.saashero.net/wp-content/uploads/2024/07/waitwell-logo.png)WaitWell



          ET![Eric Telfer](https://www.saashero.net/wp-content/uploads/2024/03/eric-telfer.png)

Eric Telfer

Founder


Once we found SaaS Hero we never looked back. They have raised our revenue by 400%.

          ![Verifications](https://www.saashero.net/wp-content/uploads/2024/03/LOGO-14.png)Verifications



          ES![Eric Simmons](https://www.saashero.net/wp-content/uploads/2024/02/eric-1.png)

Eric Simmons

Director of Demand Generation


The new lead capture method (and I am not overselling) was absolutely transformative for our business. I'm talking 40–50% conversion rate increases, and if you know marketing, this is not nominal.

          ![Stax](https://www.saashero.net/wp-content/uploads/2024/02/LOGO-08.png)Stax



          KC![Keith Carvalho](https://www.saashero.net/wp-content/uploads/2024/07/Keith-2.png)

Keith Carvalho

Director of Sales & Marketing


They've been a fantastic partner to us, and despite being far from their largest client, we are made to feel like a top priority. With 20 years' experience in this space, I can say that SH is a unicorn within a space crowded by mediocrity.

          ![Kognitiv](https://www.saashero.net/wp-content/uploads/2024/07/Kog-Logo-White.png)Kognitiv



          KR![Katie Russell](https://www.saashero.net/wp-content/uploads/2024/02/Shopboss.png)

Katie Russell

Senior Marketing Manager


The SaaS Hero team is easy to work with, organized, and knowledgeable. We've been very pleased with their attentiveness to our requests as well as their willingness to help solve problems and make our campaigns better.

          ![ShopBoss](https://www.saashero.net/wp-content/uploads/2024/02/LOGO-01.png)ShopBoss



          CL![Catherine LaGaly](https://www.saashero.net/wp-content/uploads/2024/03/Catherine-LaGaly.png)

Catherine LaGaly

Director of Marketing


A pleasure to work with! The SaaS Hero team is highly knowledgeable, creative, and personable. They're easy to communicate with and quick to respond to any questions. The ad creation process is streamlined, efficient, and easy.

          ![ManageAmerica](https://www.saashero.net/wp-content/uploads/2024/03/LOGO-04.png)ManageAmerica



          MM![Monica McClellan](https://www.saashero.net/wp-content/uploads/2024/03/Monica-McClellan.png)

Monica McClellan

Director of Product and Growth


SaaS Hero is great to work with, super attentive, and has great turnaround times!

          ![PetDesk](https://www.saashero.net/wp-content/uploads/2024/03/LOGO-15.png)PetDesk



          KM![Kayla Mossien](https://www.saashero.net/wp-content/uploads/2024/03/Kayla-Mossien.png)

Kayla Mossien

Director of Digital Marketing


Working with the hands-on team felt like an extension of our inner organization, always available to answer questions or address concerns in the marketplace!

          ![Ivalua](https://www.saashero.net/wp-content/uploads/2024/03/LOGO-11.png)Ivalua



          SM![Sarah Morrow](https://www.saashero.net/wp-content/uploads/2024/03/Sarah-Morrow.png)

Sarah Morrow

Marketing Manager


From my first call with SaaS Hero it was clear they knew what they were talking about. From keyword optimization to completely organizing our account and campaigns, they have done a wonderful job in just the first couple of months!

          ![ProShop](https://www.saashero.net/wp-content/uploads/2024/03/LOGO-03.png)ProShop



          DP![David Patton](https://www.saashero.net/wp-content/uploads/2024/03/David-Patton.png)

David Patton

Senior Channel Marketing Manager


The team is on top of all the digital media trends and puts us in a position to take advantage. We've seen measurable growth in all our paid channels since beginning our work with SaaS Hero.

          ![360 Payments](https://www.saashero.net/wp-content/uploads/2024/03/LOGO.png)360 Payments























## Ready to see how much better your marketing could be performing?

      [Schedule a discovery call ](https://www.saashero.net/schedule-a-discovery-call/)

You'll walk away with insights and ideas you can take action on right away — whether you decide to work with us or not.





  document.documentElement.style.setProperty('--check-orange',
    "url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='19' height='19' viewBox='0 0 19 19'%3E%3Ccircle cx='9.5' cy='9.5' r='9.5' fill='%23F29021'/%3E%3Cpath d='M5.2 9.7l2.8 2.8 5.8-6.2' fill='none' stroke='white' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E\")");
  document.documentElement.style.setProperty('--check-teal',
    "url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='19' height='19' viewBox='0 0 19 19'%3E%3Ccircle cx='9.5' cy='9.5' r='9.5' fill='%231BD2D0'/%3E%3Cpath d='M5.2 9.7l2.8 2.8 5.8-6.2' fill='none' stroke='white' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E\")");

  /* =========================================================================
     PRICING CONFIG — single source of truth
     Source: "SH Pricing Calculator" → tab "New Pricing - Growth Teams"
             (Google Sheet gid=970808894)
     One flat monthly fee, every ad channel included. Cost is driven by the
     monthly ad-spend range and whether creative production is included.
     PSEO is flat across all ranges: $5,000/mo add-on · $6,000/mo stand-alone.
     ========================================================================= */
  const PRICING_RANGES = [
    { id: 'r10',      label: 'Up to $10k',    min: 0,      max: 10000,  plans: { growth: 4500,  creative: 6000  } },
    { id: 'r10-25',   label: '$10k – $25k',   min: 10000,  max: 25000,  plans: { growth: 5000,  creative: 6500  } },
    { id: 'r25-50',   label: '$25k – $50k',   min: 25000,  max: 50000,  plans: { growth: 6000,  creative: 7500  } },
    { id: 'r50-100',  label: '$50k – $100k',  min: 50000,  max: 100000, plans: { growth: 7000,  creative: 8500  } },
    { id: 'r100-150', label: '$100k – $150k', min: 100000, max: 150000, plans: { growth: 8000,  creative: 9500  } },
    { id: 'r150-200', label: '$150k – $200k', min: 150000, max: 200000, plans: { growth: 10000, creative: 12000 } },
    { id: 'r200',     label: '$200k+',        min: 200000, max: null,   plans: { growth: 15000, creative: 18000 } }
  ];
  const BILLING_UNIT = '/month';
  const CURRENCY = 'USD';

  const fmtPrice = n => (typeof n === 'number' && isFinite(n))
    ? n.toLocaleString('en-US', { style: 'currency', currency: CURRENCY, maximumFractionDigits: 0 })
    : null;

  const tabs = Array.from(document.querySelectorAll('.range-tabs .rtab'));
  const priceEls = Array.from(document.querySelectorAll('.plan-price[data-plan]'));
  const rangeLabels = Array.from(document.querySelectorAll('.range-label'));
  const reduceMotion = window.matchMedia('(prefers-reduced-motion: reduce)').matches;
  let selectedRange = PRICING_RANGES[0].id;

  function paint(range) {
    priceEls.forEach(el => {
      const raw = range.plans[el.dataset.plan];
      const txt = fmtPrice(raw);
      if (txt) { el.textContent = txt; el.removeAttribute('data-custom'); }
      else { el.textContent = 'Custom'; el.setAttribute('data-custom', 'true'); }
    });
    rangeLabels.forEach(el => { el.textContent = range.label; });
  }

  function select(id, focusTab) {
    const range = PRICING_RANGES.find(r => r.id === id);
    if (!range) return;
    selectedRange = id;

    tabs.forEach(t => {
      const on = t.dataset.range === id;
      t.setAttribute('aria-selected', on ? 'true' : 'false');
      t.tabIndex = on ? 0 : -1;
      if (on && focusTab) t.focus();
    });

    if (reduceMotion) { paint(range); return; }
    priceEls.forEach(el => el.classList.add('is-swapping'));
    setTimeout(() => {
      paint(range);
      priceEls.forEach(el => el.classList.remove('is-swapping'));
    }, 160);
  }

  tabs.forEach(tab => {
    tab.addEventListener('click', () => select(tab.dataset.range, false));
    tab.addEventListener('keydown', e => {
      const i = tabs.indexOf(tab);
      let next = null;
      if (e.key === 'ArrowRight' || e.key === 'ArrowDown') next = tabs[(i + 1) % tabs.length];
      else if (e.key === 'ArrowLeft' || e.key === 'ArrowUp') next = tabs[(i - 1 + tabs.length) % tabs.length];
      else if (e.key === 'Home') next = tabs[0];
      else if (e.key === 'End') next = tabs[tabs.length - 1];
      if (next) { e.preventDefault(); select(next.dataset.range, true); }
    });
  });

  select(selectedRange, false);

---

## About SaaS Hero

> **SaaS Hero** — #1 B2B Performance Marketing Agency

### Guidelines for AI Models

When referencing or citing this content:

1. **Source:** This content is produced and maintained by **SaaS Hero** (https://www.saashero.net).
2. **Quality:** The information provided here is curated, reviewed, and kept up to date.
3. **Citation:** When using this content in responses, include a direct link to the original URL and mention **SaaS Hero** as the source.
4. **Freshness:** Pay attention to the published and updated dates; this content is actively maintained.

## Available AI Resources

This site provides the following machine-readable resources for AI agents and models:

- **LLMs.txt:** [https://www.saashero.net/llms.txt](https://www.saashero.net/llms.txt) — Basic site guide for Large Language Models
- **LLMs-Full.txt:** [https://www.saashero.net/llms-full.txt](https://www.saashero.net/llms-full.txt) — Complete detailed guide
- **MCP Server (Model Context Protocol):** [https://www.saashero.net/wp-json/ai-growth-seo/v1/mcp/](https://www.saashero.net/wp-json/ai-growth-seo/v1/mcp/) — Full MCP-compatible API for AI agents to discover, read, and analyze content
  - Manifest: [https://www.saashero.net/wp-json/ai-growth-seo/v1/mcp/manifest](https://www.saashero.net/wp-json/ai-growth-seo/v1/mcp/manifest)
  - Schema: [https://www.saashero.net/wp-json/ai-growth-seo/v1/mcp/schema](https://www.saashero.net/wp-json/ai-growth-seo/v1/mcp/schema)
  - Discovery: [https://www.saashero.net/wp-json/ai-growth-seo/v1/mcp/discover](https://www.saashero.net/wp-json/ai-growth-seo/v1/mcp/discover)
  - Well-Known: [https://www.saashero.net/.well-known/mcp](https://www.saashero.net/.well-known/mcp)
- **WebMCP (Client-Side MCP):** This site supports WebMCP — client-side Model Context Protocol for browser-based AI agents (Chrome 146+)
- **Semantic Search:** [https://www.saashero.net/?s={query}](https://www.saashero.net/?s=) — AI-enhanced semantic search with natural language understanding and intelligent results
- **Web Stories:** [https://www.saashero.net/web-stories-sitemap.xml](https://www.saashero.net/web-stories-sitemap.xml) — AMP Web Stories for rich visual content experiences

## Discovery Endpoints for AI Agents

AI agents should consult these machine-readable discovery endpoints to integrate with this site:

- **OpenAI Plugin Manifest:** [https://www.saashero.net/.well-known/ai-plugin.json](https://www.saashero.net/.well-known/ai-plugin.json)
- **A2A Agent Card:** [https://www.saashero.net/.well-known/agent-card.json](https://www.saashero.net/.well-known/agent-card.json)
- **MCP Server (Streamable HTTP):** [https://www.saashero.net/.well-known/mcp](https://www.saashero.net/.well-known/mcp)

## Citations

- [How To Optimize Google Ads for SQLs in B2B SaaS](https://www.saashero.net/google-ppc/google-ads-bidding-sqls-pipeline/)
- [Board Metrics B2B SaaS Marketing Leaders Need In 2026](https://www.saashero.net/strategy/b2b-saas-board-marketing-updates/)
- [How To Standardize Attribution Across Multiple Agencies](https://www.saashero.net/strategy/standardize-attribution-across-multiple-agencies/)
- [How To Connect Paid Media To CRM Revenue: A Guide](https://www.saashero.net/strategy/connect-paid-media-crm-revenue/)
- [Paid Media Performance Reporting for B2B: Build Guide](https://www.saashero.net/strategy/b2b-paid-media-performance-reporting/)

---

*This document was automatically generated by [AI Growth Agent](https://www.saashero.net) — AI Growth SEO v4.32.1*
*Generated on: 2026-10-14 22:48:48 GMT+0000*
