Menu
CSS Tools | Cubic Bezier Generator
CG

Cubic Bezier Generator

Drag the green (P1) and red (P2) points inside the box, or edit numeric values. Preview updates live — generated CSS is ready to copy.
Control Points (0.00 — 1.00)
Origin: bottom-left
Animation Preview
cubic-bezier(0.25, 0.10, 0.25, 1.00) 1s
/* CSS will appear here */
Live Coordinates
Type or drag
P1
x: 0.25, y: 0.10
P2
x: 0.25, y: 1.00
Tip: Values are clamped between 0 and 1. Use presets for common easings.

Comments

Login to leave a comment

No comments yet. Be the first to comment!

Similar CSS Tools

What is online Cubic Bezier Generator?

The Cubic Bezier Generator is a visual tool that helps web developers and designers create custom CSS animation timing functions. It provides an interactive canvas where you can drag control points to design smooth, natural animation curves. The tool instantly generates CSS cubic-bezier() code that you can copy and use in your projects. With real-time preview, predefined easing presets, and live animation demonstrations, you can perfect your animation timing without writing complex mathematical values manually. The generator supports custom duration settings and shows exactly how your animation will behave before implementation.

How to use Cubic Bezier Generator?

  1. Drag Control Points: Click and drag the green (P1) and red (P2) control points within the visual editor to shape your animation curve
  2. Use Presets: Select from common easing functions like ease, ease-in, ease-out, or ease-in-out from the dropdown menu
  3. Fine-tune Values: Enter precise numeric values (0.00 to 1.00) in the input fields for exact control
  4. Adjust Duration: Set your animation duration in seconds to see how it affects the preview
  5. Preview Animation: Watch the blue dot animate in real-time using your custom bezier curve
  6. Copy CSS Code: Click "Copy CSS" to get the complete animation code or "Copy one-line" for just the timing function
  7. Test & Iterate: Modify the curve until you achieve the perfect animation feel

Use Cases for Cubic Bezier Generator

  1. Website Animations: Create smooth hover effects, transitions, and micro-interactions for buttons, cards, and navigation menus
  2. UI/UX Design: Design natural motion for dropdown menus, modals, sidebars, and page transitions
  3. Loading Animations: Build engaging loading indicators and progress bars with custom acceleration curves
  4. Scroll Animations: Craft smooth scroll-triggered animations for parallax effects and reveal animations
  5. Mobile App Interfaces: Design touch-responsive animations that feel natural on mobile devices
  6. Data Visualizations: Animate charts, graphs, and infographics with professional timing
  7. E-commerce Sites: Create attention-grabbing product showcases and image galleries with smooth transitions
  8. Brand Animations: Develop unique animation signatures that match your brand's personality
  9. Game UI: Design responsive menu animations and HUD transitions for web-based games
  10. Form Interactions: Add polished animations to form validation, error messages, and success states

Frequently Asked Questions

Have questions about Cubic Bezier Generator? Find answers to the most common queries below.

A cubic bezier curve is a mathematical function that defines the acceleration pattern of CSS animations and transitions. The cubic-bezier() function takes four values (x1, y1, x2, y2) representing two control points that shape the timing curve. This allows you to create custom animation speeds instead of using basic keywords like "linear" or "ease."
Copy the generated code and paste it into your CSS file. You can use it with the animation property (e.g., animation: myAnim 2s cubic-bezier(0.25, 0.1, 0.25, 1.0);) or the transition property (e.g., transition: all 0.3s cubic-bezier(0.42, 0, 0.58, 1);). Replace the timing function value with your custom bezier curve.
P1 (green) and P2 (red) are control points that determine the shape of your animation curve. P1 controls the initial acceleration, while P2 controls the deceleration. The x-axis represents time (0 to 1), and the y-axis represents progress (0 to 1). Moving these points changes how fast or slow your animation progresses at different stages.
While our tool clamps values between 0 and 1 for standard use, CSS cubic-bezier actually supports values outside this range for bounce and overshoot effects. Values greater than 1 create anticipation or overshoot, while negative values can create bounce-back effects. You can manually edit the generated code to use these extreme values.
These are predefined timing functions: "ease" starts slow, speeds up, then slows down (default); "ease-in" starts slow and accelerates; "ease-out" starts fast and decelerates; "ease-in-out" starts slow, speeds up in the middle, then slows down. Our tool includes these presets so you can use them as starting points for customization.
Yes! The cubic-bezier() timing function is widely supported across all modern browsers including Chrome, Firefox, Safari, Edge, and Opera. It's been part of the CSS3 specification since 2009 and works on mobile browsers as well. No vendor prefixes are needed.
Use the "easeOutBack" preset as a starting point, or manually set P2 y-value above 1.0 (e.g., 1.2 or 1.3). This creates an overshoot effect where the animation goes past its target and bounces back. For more complex bounce effects, you may need to combine multiple keyframes.
The tool doesn't have built-in saving functionality, but you can bookmark your curves by copying the generated CSS code into a code snippet manager, note-taking app, or your project's style guide. Consider creating a library of your favorite timing functions for easy reuse across projects.