Hey Zoho Writer users!
We are happy to let you know that we have enhanced Zoho Writer's formula with new functions to calculate your investment's present value (PV), net present value (NPV), and future value (FV).
These functions can help you determine the value of a series of cash flows from an investment compared to a discount rate (such as inflation or interest). Read on to learn their syntax and how to use these functions.
NPV function
Syntax
=NPV(discount, cashflow1, cashflow2, ...)
Inputs:
discount
| The discount rate of the investment over a period
|
cash flow
| The amount of money coming in or going out in the investment period
|

Note:
The discount should be provided as a decimal number. For example if the discount is 3% then the value should be 0.03.
Calculate NPV with the initial investment amount by adding it in the first cash flow parameter as a negative amount.

Tip:
Discount can also be mentioned as a table cell reference or merge field.
Cash flow can be mentioned as a table cell reference, merge field, or a table cell range (if it is used in a table in the same document).
Examples of NPV
Example
| Syntax
| Output
|
Calculate the NPV of a $3,000 investment with cash flows of $5,000, $2,000, and $4,500 at a discount rate of 10%
| =NPV(0.1,-3000,5000,2000,4500)
| 5981.1488286
|
Calculate the NPV of an investment with cash flows of $500, $750, and $1,000 at a discount rate of 7%
| =NPV(0.07,500,750,1000)
| 1899.799
|
PV function
Syntax
=PV(rate, number_of_periods, payment_amount, future_value, end_or_beginning)
Inputs:
rate
| The rate of interest over the investment period
|
number_of_periods
| The number of months, years, or other time periods you are considering as the investment horizon
|
payment_amount
| The amount you are investing
|
future_value
| The expected future value of the investment
|
end_or_beginning
| The time when payment is due in your investment period. The value should be 0 if the payment is at the end of the period and 1 if it is at the beginning.
|

Note:
The rate, number_of_periods, and payment_amount should have units of consistent value. For example, for a 24-month investment with monthly payments, the rate should be divided by 24 and the number_of_periods should be 24.
The future_value and end_or_beginning are optional parameters and their default value will be 0.
Here are some examples of PV
Example
| Syntax
| Output
|
Calculate the PV of $500 paid in 5 payments over one year with an interest rate of 5%
| =PV(0.05,5,-500,0,0)
| 99.98713
|
Calculate the PV of an amount of $100 paid over 12 months, with an interest rate of 5%, paid at the beginning of the investment period
| =PV(0.0041,12,-100,0,1)
| 338.330
|
FV function
Syntax
=FV(rate, number_of_periods, payment_amount, present_value, end_or_beginning)
Inputs:
rate
| The rate of interest over the investment period
|
number_of_periods
| The number of months (or other periods of time) you are investing
|
payment_amount
| The amount you are investing
|
present_value
| The present value of the amount you are investing
|
end_or_beginning
| The time when payment is due in your investment period. The value should be 0 if the payment is at the end of the period and 1 if it is at the beginning.
|

Note:
The rate, number_of_periods, and payment_amount should have units of consistent value. For example, for an investment for 24 months, paid quarterly the rate should be divided by 8 and the number_of_periods should be 8.
The present_value and end_or_beginning are optional parameters and their default value will be 0.
Here are some examples of FV
Example
| Syntax
| Output
|
Calculate the FV of an investment with an amount of $1,000 paid in 6 payments over one year with an interest of 7% and present value of $10,000
| =FV(0.07,6,-1000,-10000)
| 2658889000
|
Calculate the FV of an investment with an amount of $500 paid over 12 months with an interest of 5% paid at the beginning of the investment period and present value of $5,000
| =FV(0.0041,12,-500,-5000,1)
| 413203.0951
|
How to use these functions in Zoho Writer documents
- Click the hamburger menu located on the top left side of the editor and click Fields.
- Click Formula under the Dynamic Fields category.
- In the New Formula popup, click Choose Function and choose your desired function from the list.
Try the new functions in Zoho Writer and let us know your suggestions and feedback in the comments below or at support@zohowriter.com or support@eu.zohowriter.com.
If you have any functions that you want us to add in Zoho Writer, please let us know.
Regards,
Team Writer
Recent Topics
Systematic SPF alignment issues with Zoho subdomains
Analysis Period: August 19 - September 1, 2025 PROBLEM SUMMARY Multiple Zoho services are causing systematic SPF authentication failures in DMARC reports from major email providers (Google, Microsoft, Zoho). While emails are successfully delivered due
Accidentally deleted a meeting recording -- can it be recovered?
Hi, I accidentally deleted the recording for a meeting I had today. Is there a way I can recover it?
To Zoho customers and partners: how do you use Linked Workspaces?
Hello, I'm exploring how we can set up and use Linked Workspaces and would like to hear from customers and partners about your use cases and experience with them. I have a Zoho ticket open, because my workspace creation fails. In the meantime, how is
How to access email templates using Desk API?
Trying to send an email to the customer associated to the ticket for an after hours notification and can't find the API endpoint to grab the email template. Found an example stating it should be: "https://desk.zoho.com/api/v1/emailtemplates/" + templateID;
How to render either thumbnail_url or preview_url or preview_data_url
I get 401 Unauthorised when using these urls in the <img> tag src attribute. Guide me on how to use them!
Update Portal User Name using Deluge?
Hey everyone. I have a basic intake form that gathers some general information. Our team then has a consultation with the person. If the person wants to move forward, the team pushes a CRM button that adds the user to a creator portal. That process is
Zoho Bookings No Sync with Outlook
Zoho Bookings appointments are showing on my Outlook Calendar but Outlook events are not showing on Zoho Bookings. How do I fix this?
Unable to retrieve Contact_Name field contents using Web API in javascript function
Hello, I've added a field in the Purchase Order form to select and associate a Sales Order (Orden_de_venta, lookup field). I've also created a client script to complete some fields from the Sales Order (and the Quote), when the user specifies the related
Updating Woocommerce Variation Products Prices Via Zoho CRM
I can update product prices with this flow: But I can't update variant products. I got a code from Zoho for this, but I couldn't get it to work. It needs to find the product in the CRM from the SKU field and update the variation with the price there.
Emails Disappearing From Inbox
I am experiencing the unnerving problem of having some of the messages in my inbox just disappear. It seems to happen to messages that have been in there for longer than a certain amount of time (not sure how long exactly). They are usually messages that I have flagged and know I need to act on, but have not gotten around to doing so yet. I leave them in my inbox so I will see them and be reminded that I still need to do something about them, but at least twice now I have opened my inbox and found
Power of Automation :: Automatic removal of project users once the project status is changed.
A custom function is a software code that can be used to automate a process and this allows you to automate a notification, call a webhook, or perform logic immediately after a workflow rule is triggered. This feature helps to automate complex tasks and
Customizing Form Questions per Recipient Group in Zoho Campaigns/Forms
Hello everyone, I would like to ask if it’s possible in Zoho Campaigns or Zoho Forms to send out a campaign where the form questions can be customized based on the group of recipients. Use case example: I have prepared 20 questionnaire questions. For
Automatic category assignment
Hi, I’d like to ask if there is a way to automatically assign an expense category based on the recognized Merchant. What would be the simplest way to set up automatic category assignment? Alternatively, is there an option to first choose the category
Zoho Books - France
L’équipe de Zoho France reçoit régulièrement des questions sur la conformité de ses applications de finances (Zoho Books/ Zoho Invoice) pour le marché français. Voici quelques points pour clarifier la question : Zoho Books est un logiciel de comptabilité
Every time an event is updated, all participants receive an update email. How can I deactivate this?
Every time an event is updated in Zoho CRM (e.g. change description, link to Lead) every participant of this meeting gets an update email. Another customer noticed this problem years ago in the Japanese community: https://help.zoho.com/portal/ja/community/topic/any-time-an-event-is-updated-on-zohocrm-calendar-it-sends-multiple-invites-to-the-participants-how-do-i-stop-that-from-happening
Having Trouble Opening The Candidate Portal
Recently am having trouble opening the Candidate Portal. It keeps loading but cannot display any widgets. Tried Safari, Chrome and Edge. Non of them work. Please solve the problem ASAP.
Forms - Notification When Response Submitted
How do I set it up to generate an email notification when a response (class request) is submitted?
how to use validation rules in subform
Is it possible to use validation rules for subforms? I tried the following code: entityMap = crmAPIRequest.toMap().get("record"); sum = 0; direct_billing = entityMap.get("direct_billing_details"); response = Map(); for each i in direct_billing { if(i.get("type")
Notes Issues
Been having issues with Notes in the CRM. Yesterday it wasn't showing the notes, but it got resolved after a few minutes., Now I have been having a hard time saving notes the whole day. Notes can't be saved by the save button. it's grayed out or not grayed
How to disable user entry on Answer Bot in Zobot
Hi, I have an Answer Bot in my Zobot, here is the configuration: I only want the user to choose 1 of the 4 the options I have provided: When no answer found, user chooses 'I'll rephrase the question' or 'Ask a different question When answer is found,
More admin control over user profiles
It's important for our company, and I'm sure many others, to keep our users inline with our branding and professional appearance. It would be useful for administrators to have more control over profile aspects such as: Profile image User names Email signatures
Please Make Zoho CRM Cadences Flexible: Allow Inserting and Reordering Follow-Up Steps
Sales processes are not static. We test, learn, and adapt as customers respond differently than expected. Right now, Zoho Cadences do not support inserting a new step between existing follow-ups or changing the type of an existing primary step. If I realize
Changing the Default Search Criteria for Finding Duplicates
Hey everyone, is it possible to adjust the default search criteria for finding and merging duplicate records? Right now, CRM uses some (in my opinion nonsensical) fields as search criteria for duplicate records which do nothing except dilute the results.
Clear Tag & Linking Between Quotes and Sales Orders
Hi Zoho Team, In Zoho Books, when a quote is converted into a sales order, it would be extremely useful to have: A clear tag/indicator on the quote showing that it has been converted into a sales order. A direct link in the sales order back to the originating
Zoho Books Sandbox environment
Hello. Is there a free sandbox environment for the developers using Zoho Books API? I am working on the Zoho Books add-on and currently not ready to buy a premium service - maybe later when my add-on will start to bring money. Right now I just need a
Add Direct Ticket Link to Zoho Help Center Portal in Email Replies
Hi Zoho Support Team, We hope you're doing well. We’d like to request a small but valuable improvement to enhance the usability of the Zoho Help Center portal (https://help.zoho.com/portal/en/myarea). Currently, when someone from Zoho replies to a support
[Webinar] Deluge Learning Series - AI-Powered Automation using Zoho Deluge and Gemini
We’re excited to invite you to an exclusive 1-hour webinar where we’ll demonstrate how to bring the power of Google’s Gemini AI into your Zoho ecosystem using Deluge scripting. Whether you're looking to automate data extraction from PDFs or dynamically
Connecting Zoho Inventory to ShipStation
we are looking for someone to help connect via API shipStation with Zoho inventory. Any ideas? Thanks. Uri
Subform edits don't appear in parent record timeline?
Is it possible to have subform edits (like add row/delete row) appear in the Timeline for parent records? A user can edit a record, only edit the subform, and it doesn't appear in the timeline. Is there a workaround or way that we can show when a user
New in Cadences: Option to Resume or Restart follow-ups when re-enrolling records into a Cadence, and specify custom un-enrollment criteria
Managing follow-ups effectively involves understanding the appropriate timing for reaching out, as well as knowing when to take a break and resume later, or deciding if it's necessary to start the follow-up process anew. With two significant enhancements
Im Stuck in an EDIT ONLY WITH WIZARD issue
So I found Wizards to be a really helpful tool in minimizing the exposure of redundant, superfluous fields to staff that would never otherwise have to edit those fields. My issue is, that when the record (in this case a lead) is created with a wizard,
Account upgrade
Good evening, I upgraded my account and paid for it. From standard to professional. Unfortunately after the paiment my account was not upgraded. Please your advise. Best Regards Erik van Staverden
How to set ALL default dates of my organization to DD-MM-YYYY format?
All replies to this question comes from a time where the UI was different. It's extremely frustrating not being able to find how to do this simple setting change. I want everything and everyone in my organizations to have DD-MM-YYYY date format by default.
How can I sync from Zoho Projects into an existing Zoho Sprints project?
Hi I have managed to integrate Zoho Projects with Zoho Sprints and I can see that the integration works as a project was created in Zoho Sprints. But, what I would like to do is to sync into an existing Zoho Sprints project. Is there a way to make that
Can we generate APK and IOS app?
Dears, I want to know the availability to develop the app on zoho and after that .. generate the APK or IOS app and after that I added them to play store or IOS store.. Is it possible to do this .. I want not to use zoho app or let my customers use it. thanks
Zoho Subform Workflows onAdd of Row
Suppose I have a form with attached workflows onLoad. If I use the form as a subform, will it inherit the workflows or do I need to create new ones onAdd of row?
Session Expired
I constantly get "Session Expired" and need to relogin or close and open the application again. This gets really frustrating during the day. Is this something that can be solved? This really makes me want to leave the app as it is no go to need to reopen
Super Admin removal
I brought a sub, and I gave the Super admin rights to a person who is no longer with us, so I need to change, and I need to make myself the Super admin
Better Notes Commenting
Hi, I'd like to suggest better collaboration tools for NOTES. The current notes section for Accounts, Contacts and Deals is not ideally suitable for any degree of communication or collaboration. When responding to a note, there is no ability to leave
Formula field with IF statement based on picklist field and string output to copy/paste in multi-line field via function
Hello there, I am working on a formula field based on a 3-item picklist field (i.e. *empty value*, 'Progress payment', 'Letter of credit'). Depending on the picked item, the formula field shall give a specific multi-line string (say 'XXX' in case of 'Progress
Next Page