Call to action sections
The invitation to the next step, from a quiet line to a lit panel.
Switch category
Marketing
- Hero17
- Features15
- Logo clouds8
- Stats8
- Pricing11
- Testimonials11
- Call to action11
- FAQ7
- Newsletter12
- Banners9
- Popups and consent7
- Services7
- Use cases6
- Security and trust7
- Changelog and roadmap6
- Launch and waitlist6
- Product tour6
- Press and awards10
- AI features6
- App download5
- Donations and support4
- Problem and solution5
- Objections5
- Calculators10
- Quiz and product finder5
- Free trial5
- Referral and partners10
- Community5
- Open source5
- Manifesto5
- Offer5
- Lead magnet4
- Scroll stories20
- Scroll journeys13
- Scroll effects13
- Scroll reveals and transitions15
Content
- Blog16
- Gallery7
- Team8
- About11
- Content8
- Process7
- Contact8
- Comparison5
- Integrations5
- Error pages5
- Careers7
- Case studies6
- Portfolio6
- Events and webinars6
- Help center6
- Legal pages5
- Documentation4
- Search results5
- Resources and downloads4
- Podcast4
- Editorial15
- Authors and interviews10
- Glossary5
- Recipes5
- Data stories10
- Long reads5
- Surveys and feedback14
- Form states12
- Request forms16
- Applications and sign-ups13
- Address, payment and consent12
App
- Authentication9
- Dashboards6
- Tables6
- Settings5
- AI and chat16
- Calendar5
- Inbox and messages5
- Notifications6
- Files6
- Projects6
- Profiles6
- Onboarding6
- Billing and usage10
- Developer settings15
- Security and access10
- Import, export and history15
- Automation and builders14
- AI answers18
- AI writing and creation13
- AI setup14
- AI assistants9
E-Commerce
Industries
- Menus7
- Appointments6
- Listings6
- Courses6
- Rooms and stays5
- Classes and schedules6
- Medical practice5
- Law firm5
- Salon and spa5
- Automotive5
- Travel5
- Sports club5
- Coworking5
- Museum5
- Cinema5
- School5
- Trades5
- Insurance5
- Banking5
- Personal brand15
- Speakers and media kits10
- Creators15
- Coaching and consulting10
- Artists and musicians15
- Dental practice5
- Veterinary practice5
- Therapy practice5
- Weddings and events5
- Architecture studio5
- Tax advisor5
- Estate agent5
- Florist5
- Winery5
- Daycare5
- Driving school5
- Care services5
- Festival5
Elements
- Buttons20
- Forms and inputs22
- Pickers and selections21
- Special input fields20
- Cards10
- Overlays21
- Navigation elements15
- Menu bars and switchers14
- Data display15
- Progress and states13
- Lists, trees and timelines17
- Charts22
- Comparison charts22
- Statistical charts20
- KPI, live and map charts22
- Text effects15
- Text accents16
- Backgrounds19
- Beams, particles and motion18
- Media19
- Code and JSON8
- Panels and splitters4
The last invitation on the page
A call to action section closes a page with one clear next step. The eleven variants here range from a quiet line to a lit panel, and each one takes its headline, text and buttons through props, so the wording stays yours.
Centered and Minimal end a long page calmly. Split with image and Image background add a picture when the offer is a place or a person. Card with beam and Gradient panel draw the eye on a dark page. With email form collects signups in place, With app buttons sends people to the stores, With contact person puts a face next to the request, With numbers repeats the proof once more.
Repeat the main action of the hero here, with the same words, so visitors recognize it. One button is better than two. Place the section after the content that removes doubt, such as testimonials or the FAQ, not between two information blocks.
Call to action
Details
What Call to action brings along, read from the registry and the source.
- Area
- Marketing
- Variants
- 11
- Version
- 1.0.0 · since 1.0.0
- File
- components/ui/cta.tsx
- Brings along
- utilskitbuttoniconrevealnumber-tickermotion
- npm packages
- None
- Languages
- English and German, 13 texts of its own
- Studio
- All 11 variants editable
- Build with AI
- Over MCP in Claude, Cursor, Copilot and Codex
Props
The CtaProps interface from components/ui/cta.tsx, with the comments from the code.
variantoptionalCtaVariantcenteredsplitcardbanner-stripwith-formwith-app-badgesgradient-panelwith-contact-personminimalimage-backgroundwith-stats
eyebrowoptionalReact.ReactNodetitlerequiredReact.ReactNodedescriptionoptionalReact.ReactNodeprimaryActionoptionalCtaActionsecondaryActionoptionalCtaActionnotesoptionalstring[]Short reassurances with a check mark
mediaoptionalReact.ReactNodesplit, image-background: the picture. with-app-badges: the phone.
personoptionalCtaPersonwith-contact-person
formActionoptionalstringwith-form: where the form posts. Without onSubmit the browser submits it.
onSubmitoptional(email: string) => void | Promise<void>with-form: called with the email. Resolve to show success, throw to show the error.
appsoptional{ ios?: string; android?: string; qr?: React.ReactNode }with-app-badges: links to both stores, and an optional QR code node
statsoptional{ value: string; label: string }[]with-stats: numbers that back the invitation
iconoptionalIconNamecard: icon in the badge above the title
Built-in texts
Call to action writes these texts itself. The language follows the KitProvider, the labels prop replaces single ones.
Show all 13 texts
| Key | English | German |
|---|---|---|
| English Work email | German Geschäftliche E-Mail | |
| placeholder | English you@company.com | German du@firma.de |
| submit | English Get started | German Jetzt starten |
| sending | English Sending | German Wird gesendet |
| invalid | English Please enter a full email address, like name@company.com. | German Bitte gib eine vollständige E-Mail-Adresse ein, etwa name@firma.de. |
| failed | English That did not go through. Please try again in a moment. | German Das hat nicht geklappt. Bitte versuch es gleich noch einmal. |
| success | English Check your inbox. The link to your account is on its way. | German Schau in dein Postfach. Der Link zu deinem Konto ist unterwegs. |
| iosSmall | English Download for | German Laden für |
| ios | English iPhone and iPad | German iPhone und iPad |
| androidSmall | English Get it for | German Holen für |
| android | English Android | German Android |
| scan | English Scan with your phone camera | German Mit der Handykamera scannen |
| typing | English is typing | German schreibt gerade |
Accessibility
Read from the source of the component.
- Sets aria-describedby and aria-invalid, so screen readers announce purpose and state.
- Uses the roles alert and status.
- Announces changes through a live region without moving focus.
- Every field has a label, visible or for screen readers.
- Adds text for screen readers where icons and graphics stand alone.
- Shows a visible focus ring when used with the keyboard.
- The server renders the starting state in full, JavaScript only adds the interaction.
Motion
- Rises in briefly the first time it comes into view (kit-rise, useInView).
- Brings animations of its own, calmly timed and without wobble.
- With reduced motion (prefers-reduced-motion) it stays still. 13 places in the code switch motion off then.
Frequent questions
How do I install Call to action?
With aiw add @ai-website/cta. The command puts components/ui/cta.tsx into your project, the code is yours from then on. It brings along button, icon, reveal, number-ticker and motion. It needs no further npm packages.
Which variants does Call to action have?
11 variants, Centered, Split with image, Card with beam, Banner strip, With email form, With app buttons, Gradient panel, With contact person, Minimal, Image background and With numbers. You pick one with the variant prop, for example variant="split".
Can I translate the texts of Call to action?
Yes. Call to action carries 13 texts of its own in English and German, such as “Work email”, “you@company.com” and “Get started”. The language follows the KitProvider, single texts change through the labels prop.
Can an AI assistant build with Call to action?
Yes. Through the MCP server of the aiw CLI, Claude, Cursor, GitHub Copilot, Windsurf, Codex and Gemini find Call to action with aiw_components and install it with aiw_add @ai-website/cta. Name the variant in your prompt, for example variant="centered", and the assistant writes your content straight into the props.
Can I adjust Call to action without code?
Yes, in the Studio. All 11 variants are editable there, texts, lists and switches. The Studio writes the matching Cta code to copy.
Similar components, Often combined with
Similar components
More from Marketing, the same area of the kit.
Often combined with
Sections that usually sit next to Call to action on a page.
Loading the source