Loading…
The Bananary
Sign in to Bunch
Dev sign-in — no Google Client ID configured yet
Dev sign in
{{ loginError }}
The Bananary
No access yet
{{ userName }} doesn't have access to Bunch yet. Contact Shawn Wallace to request access.
Sign out
The Bananary {{ chromeLabel }} {{ dirtyLabel }} {{ userName }} Sign out
Estimates

Saved estimates

{{ libMeta }}
How to use this {{ compareCountLabel }} Cancel Compare Compare Import New estimate
Search
Estimate date
Clear
Start here

Every saved estimate is shared with every producer — this is one library, not your own private list. Mine, Recently opened, Favorite and All are four views over the same shared data, not four separate places things live.

Finding an estimate
MineEstimates you created or duplicated. Recently openedThe last several you've viewed, on this browser. FavoriteWhatever you've starred, on this browser. AllEvery estimate every producer has saved. Archived ones only show here, and only with "Show archived" checked. Search + datesFilters within whichever tab you're on — project name, client, job number, and an estimate-date range.
Versions and families
One row per jobAn estimate with multiple versions collapses to a single row — expand it to see every version, none hidden or implied "current." Version upInside an estimate, not from the library — it duplicates within the same family instead of starting a new one.
New, compare, and pin
New estimateStarts blank from the standard template. ImportLoads a JSON file exported from an estimate (here or from a local test copy of Bunch) as a brand new estimate in this library — it never overwrites an existing one. ComparePick up to 3 real estimates (any of them, not just versions of one job) for a side-by-side topline comparison with deltas and a notes field for what the numbers alone don't explain. PinFrom inside an estimate, pin it for quick reference in the sidebar without leaving whatever else you're editing — a read-only look, not a second editable copy.
Production Calendar

Saved calendars

{{ calLibMeta }}
How to use this New calendar
Search
Clear
Start here

Calendars save the same way estimates do — shared with every producer under Mine, Recently opened, Favorite and All, not private to whoever created them.

Finding a calendar
MineCalendars you created. Recently openedThe last several you've viewed, on this browser. FavoriteWhatever you've starred, on this browser. AllEvery calendar every producer has saved. SearchFilters within whichever tab you're on, by calendar name.
New, and linking to a job
New calendarStarts blank. Link it to that job's estimate from inside the calendar, or start from the estimate side instead — either one offers to create the other if it doesn't exist yet. Unlike estimatesNo families to manage — Version up just duplicates this calendar with everything carried over. Siblings are found by job number, so set one before versioning. PinFrom inside a calendar, pin it for quick reference in the sidebar without leaving whatever else you're editing — a read-only look, not a second editable copy.
Estimate

{{ estTitle }}

{{ estMeta }}
How to use this {{ pinLabel }} {{ favoriteLabel }} Calendar Version {{ archiveButtonLabel }} Print Export Delete {{ saveLabel }}
Pinned for reference — read only. Edit this instead
{{ lockMessage }} Duplicate
Reset
{{ blk.title }}
Version {{ versionDisplay }} {{ statusBadgeLabel }}
{{ blk.title }}
Deliverables {{ deliverableMeta }}
Title Length Platform
Aspect ratio
Add deliverable
Comments Prints on the top sheet and the detailed estimate · Markdown supported
**bold** *italic* - bullet 1. numbered # heading blank line = new paragraph
Categories {{ catStripMeta }}
{{ c.name }}
Labor {{ c.laborText }}
Hard cost {{ c.hardText }}
Total {{ c.totalText }}
{{ a.label }}
{{ a.description }}
{{ a.suffix }}
{{ a.formula }} {{ a.amountText }}
Discount note
{{ cat.code }} {{ cat.name }} {{ cat.meta }} {{ cat.totalText }}
{{ s.totalText }}
{{ cat.col1Label }} {{ cat.vendorLabel }} {{ cat.rateLabel }} Qty Unit Addl allow Mult Cost type Mkup Line total MK total Total
{{ g.name }} {{ g.meta }} · {{ g.hint }}
{{ r.totalText }} {{ r.mkText }} {{ r.withText }}
{{ g.addLabel }}
{{ cat.addTripLabel }} {{ cat.markupAllLabel }} {{ cat.footNote }}
Keyboard entry
Tab / Shift-Tab — next or previous cell Arrow up / down — same column Alt + arrow — move the line Shift + Delete — remove the line Cmd / Ctrl + S — save
{{ b.label }} {{ b.note }} {{ b.formula }} {{ b.amountText }}
Grand total {{ grandTotalText }}
The Bananary
Agency # {{ jobAgency }}
Bananary # {{ jobBananary }}
P.O. # {{ jobPo }}
PRODUCTION ESTIMATE
Client {{ topClient }}
Project {{ topProject }}
{{ b.title }}
{{ p.label }} {{ p.value }}
Deliverables
TitleLengthAspect ratioPlatform
{{ d.title }} {{ d.length }} {{ d.ratios }} {{ d.platform }}
CodeDescription
{{ c.code }} {{ c.name }} {{ c.totalText }}
{{ t.name }} {{ t.totalText }}
Total costs {{ subtotalText }}
{{ b.label }} {{ b.basis }} {{ b.note }} {{ b.amountText }}
Grand total {{ grandTotalText }}
Comments
{{ cb.text }}
{{ pt.text }}{{ pt.text }}{{ pt.text }}
{{ li.marker }} {{ pt.text }}{{ pt.text }}{{ pt.text }}
{{ footerDate }} | {{ footerVersion }} {{ footerProject }} {{ footerPages }}
No history yet — save this estimate to start tracking changes.
{{ h.who }} {{ h.action }} {{ h.at }}
Back to library Print
Compare

Estimate comparison

{{ col.title }} {{ col.version }} · {{ col.client }}
{{ row.name }}
{{ cell.totalText }} {{ cell.deltaText }} vs {{ cell.baselineLabel }}
Grand total
{{ cell.totalText }} {{ cell.deltaText }} vs {{ cell.baselineLabel }}
Notes on the differences Not saved — this is a quick sheet built from whichever estimates you pick each time.
Include {{ printPageCount }} · letter, top sheet portrait, detail landscape
The Bananary
Agency # {{ jobAgency }}
Bananary # {{ jobBananary }}
P.O. # {{ jobPo }}
PRODUCTION ESTIMATE
Client {{ topClient }}
Project {{ topProject }}
{{ b.title }}
{{ p.label }} {{ p.value }}
Deliverables
{{ d.title }} {{ d.length }} {{ d.ratios }} {{ d.platform }}
CodeDescriptionAmount
{{ c.code }} {{ c.name }} {{ c.totalText }}
{{ t.name }} {{ t.totalText }}
Total costs {{ subtotalText }}
{{ b.label }} {{ b.basis }} {{ b.note }} {{ b.amountText }}
Grand total {{ grandTotalText }}
Comments
{{ cb.text }}
{{ pt.text }}{{ pt.text }}{{ pt.text }}
{{ li.marker }} {{ pt.text }}{{ pt.text }}{{ pt.text }}
{{ footerDate }} | {{ footerVersion }} {{ footerProject }} {{ footerPageOne }}
The Bananary
Agency # {{ jobAgency }}
Bananary # {{ jobBananary }}
P.O. # {{ jobPo }}
PRODUCTION ESTIMATE
Client {{ topClient }}
Project {{ topProject }}
{{ cat.code }} {{ cat.name }}
Description Rate Qty Unit Addl allow Mult Cost type Mkup Line total MK total Total
{{ r.tripHeader }} {{ r.tripTotalText }}
{{ r.description }} {{ r.rateText }} {{ r.unitsText }} {{ r.unit }} {{ r.addlText }} {{ r.multText }} {{ r.costType }} {{ r.mkupText }} {{ r.lineTotalText }} {{ r.mkTotalText }} {{ r.totalText }}
Total {{ cat.totalText }}
{{ footerDate }} | {{ footerVersion }} {{ footerProject }} {{ pg.footerPages }}
Calendar name Click to rename

{{ calMetaName }}

{{ calMetaDate }} {{ calMetaVersion }}
How to use this {{ calPinLabel }} Estimate Version {{ calNotesButtonLabel }} Import CSV Export Print Add item {{ calSaveLabel }}
Pinned for reference — read only. Edit this instead
Today
{{ calRangeTitle }} {{ calMetaLine }}
Calendar notes **bold** · *italic* · `code` · - bullet · 1. numbered
Prints as
{{ d }}
{{ cell.dayNum }} {{ cell.todayFlag }}
{{ cell.msTime }} {{ cell.msTitle }}
{{ bar.timeLabel }} {{ bar.title }}
{{ day.dow }} {{ day.dateLabel }}
{{ bar.metaLabel }} {{ bar.title }}
Item
{{ r.month }} {{ r.label }}
{{ row.title }} {{ row.dateLabel }}
TitleStartEndTimeCategory
{{ row.title }} {{ row.notesPlain }}
{{ row.start }} {{ row.end }} {{ row.time }}
{{ row.catLabel }}
Rename a category, swap its color, or drag a row to reorder the key. Order here is the order clients read.
LabelColorItems
{{ row.order }}
{{ row.count }}
Add category
No history yet — save this calendar to start tracking changes.
{{ h.who }} {{ h.action }} {{ h.at }}
Drag any item to a new date · double-click a day to add · click to edit {{ calEventNotesLabel }} Load template Clear all
Preview
Range
This week Next week Date range
Start End
{{ calPrintPageCount }} · letter, paginated automatically {{ calRangeHint }}
Start here

Calendars save the same way estimates do — shared with every producer, under Mine, Recently opened, Favorite and All in the library. Press Save to share your changes; until then they're only on your screen.

The four views
MonthCalendar grid. Milestones and Delivery days fill the whole cell in their color. WeekOne week at a time with event notes shown in full. TimelineGantt across the whole schedule. Scroll sideways; hover a bar for details. ListEvery item in date order, grouped for print by week.
Editing
Add an itemAdd item in the header, or double-click any day in Month or Week. Edit an itemClick it. The side panel holds title, dates, time, category, and notes. RescheduleDrag an item to another day. Multi-day items keep their length. RenameClick the calendar name or version number in the header. DeleteOpen the item and use Delete in the panel footer. SaveNothing is shared with other producers until you press Save.
Categories and notes
Categories tabRename categories, change colors, drag to reorder the printed key. FilterClick a color chip above the calendar to hide or show that category. Event notesMarkdown: **bold**, *italic*, `code`, - bullets, 1. numbered. Notes on/off toggles them in Month view. Calendar notesThe Notes button in the header. These print at the foot of every page. HolidaysAgency holidays fill in automatically as Out of Office. They survive Clear all; delete one by hand and it stays gone.
Printing and outside sharing
PrintLive preview on the left, options on the right. Pick a month range or the full duration, then Print. Choose Save as PDF in your browser's print dialog; leave orientation on the default. ExportDownloads a JSON file of this calendar — for sending it somewhere outside Bunch. Producers here should just open it from the shared library instead. Import CSVTakes that JSON back, or a CSV with columns Title, Start, End, Time, Category, Notes. Dates as 08.31.26; blank End means a one-day item. Load templateResets to the standard production schedule, keeping holidays.
Every version of {{ calLinkedFamilyTitle }}:
Change link
No estimate is linked to this calendar's job yet. Enter an Agency or Bananary Job No. on this calendar first — only estimates sharing that job number show up here. Showing estimates that share this calendar's job number.
No saved estimates share this job number.
The Bananary {{ p.head.name }} {{ p.head.version }}
{{ m.label }}
{{ c.n }}
{{ p.head.dateLabel }} {{ p.head.client }} Job {{ p.head.jobLabel }} {{ p.contextLabel }}
{{ d }}
{{ cell.dayNum }}
{{ cell.msTitle }}
{{ bar.timeLabel }} {{ bar.title }}
{{ band.title }}
{{ d.dow }} {{ d.dateLabel }}
{{ bar.metaLabel }} {{ bar.title }}
Item
{{ r.label }}
{{ row.title }} {{ row.dateLabel }}
{{ g.label }}
{{ row.title }}
{{ row.start }} {{ row.end }} {{ row.time }} {{ row.catLabel }}
Notes
{{ c.label }}
{{ p.pageLabel }}
Admin Manage access
{{ adminError }}
Users Add someone who hasn't signed in yet — their role is waiting for them the first time they do.
Add
Freelancer client access Grants read-only visibility into a client's past estimates and calendars made by other producers. A freelancer can always create their own work for any client, granted or not.
Clients Add client
Merge fixes an accidental duplicate (e.g. "Food Lion" and "Foodlion") without losing any estimates or calendars already saved under either name. Delete only works once nothing references that client.
Requests Bug/feature requests
Start here

This is one shared estimate, not your own private draft — every producer sees it in the library once it's saved. Nothing is shared with anyone else until you press Save; the Save button shows a dot whenever there's work that hasn't been.

The three tabs
Project infoClient, project, job numbers, team, deliverables, status, and comments. Line itemsEvery cost, grouped by category. This is where the estimate actually gets built. Top sheetA read-only preview of what prints as the client-facing summary page.
Working in Line items
Add a lineThe add-line button on a category — Enter no longer adds one, on purpose. Move a lineAlt + arrow up or down. Remove a lineShift + Delete. Move between cellsTab / Shift-Tab, or arrow up / down within a column. MarkupPer line, or "Select all for markup" across a whole category at once. SaveCmd / Ctrl + S, or the Save button in the header.
Versions, status, and starting over
VersionCuts a new version in the same family, major or minor — the original stays exactly as it was. StatusActive, Approved, or Archived, on Project info. Approving one version demotes any other in the family. ResetWipes this estimate back to a blank template — only ever affects what's on screen, not other versions.
Printing, linking, and pinning
PrintLive preview next to Top sheet / Detail pages checkboxes — any combination. CalendarJump to this job's Production Calendar, or link one if it doesn't have one yet. PinKeeps this estimate one click away in the sidebar for reference while you work on something else — read-only, not a second editable copy. FavoriteShows it under the Favorite tab back in the library. ExportDownloads a JSON file of this estimate — for a local test copy of Bunch, or sending it somewhere outside Bunch. Producers here should just open it from the shared library instead.
Resetting clears everything on this estimate and returns it to the standard blank template.
{{ l.text }}
{{ resetSavedNote }}
Cancel Reset estimate
It's hidden from the library right away. You can restore it from "Show deleted" on the All tab within 60 days — after that it's gone for good.
Cancel Move to trash
{{ lockMessage }} Save is disabled here, but nothing on screen is lost yet — save it as a new estimate to keep it, or discard and go back to the last saved version.
Discard Save a copy
Currently linked:
No calendar is linked to this estimate's job yet. Create new calendar and link it
{{ estLinkPickLabel }} Enter an Agency or Bananary Job No. on this estimate first — only calendars sharing that job number show up here. Showing calendars that share this estimate's job number.
No saved calendars share this job number.
{{ newClientError }}
Cancel Add client
{{ adminDeleteUserEmail }} will lose their role and any client grants. This doesn't touch anything they've already created or saved — it stays, with their email still attached.
Cancel Delete
This removes {{ adminDeleteClientName }} from the client list. If anything still uses it, this will be blocked — merge it into another client instead.
Cancel Delete
Every estimate and calendar currently set to "{{ adminMergeFrom }}" moves to the client you pick below, along with any freelancer access granted on it. "{{ adminMergeFrom }}" is then removed. This can't be undone. {{ adminMergeError }}
Cancel Merge
{{ requestError }}
Cancel Send
{{ rolePickerGroup }}
Version up
Enter an Agency or Bananary Job No. on this calendar first — job number is what keeps versions from colliding.
Version up — duplicates this calendar