SAP Knowledge Base Article - Public

2077491 - Managing Business Goals - Variable Pay


This KBA outlines information on Business Goal import files.

  • Business Goals are required .CSV file to calculate bonus pay-outs.
  • This file will contain goal definitions, forecast information and goal results.
  • How can I import, export, create and delete goals?
  • What considerations should we take when importing and creating a goals file?

**Image/data in this KBA is from SAP internal systems, sample data, or demo systems. Any resemblance to real data is purely coincidental**


SAP SuccessFactors Variable Pay


  • Business goals contain the business goal definitions, goal forecasts, and goal results for every participating employee.
  • The variable pay module requires this information to determine the goal level payouts which impact the bonus calculation.
  • Two files are needed to manage business goals: the Business Goals import file and the Business Goal Weights import file.
  • The business goals file can be imported via Admin Center> Compensation Home > Select correct plan > Plan Setup > Manage Plan Details > Business Goals > Import Business Goals.
  • This file MUST be imported prior to calculating bonus payouts.

      import business goals.png


  • The business goal weights file needs to be re-imported every time after importing a business goals file. 
  • If business goals are added or changed, the business goal weights file needs to be re-imported and the Calculate Bonus Payout process needs to be re-run to update already-existing VP forms.
  • The business goals are like eligibility rules going from top to bottom, so when the user is eligible for a business goal that value supersede other business goals payout.
  • Additionally, the use of Program Name within the lookup field for goal eligibility does not work even though this is an option to select.
  • This is designed behaviour and is only showing as this is within the background element.
  • Should you use this field and populate the template name in the lookup value, you'll find no goals coming into forms. This field is defined and used only for the importing and exporting of employee data.
  • Ensure template ID matches to the VP program or else you risk wiping out prior program calculations if you inadvertently load a new goal file for your new VP program with the wrong goal plan template id.
  • You can check the plan xml and compare it to the Business Goal name in your plan setup details in admin tools.

Example XML:

  <obj-plan-name>Bonus Performance Plan (8005)</obj-plan-name>
  <obj-plan-desc><![CDATA[2011 Program]]></obj-plan-desc>
  <obj-plan-lastmodified>10/5/06 4:30 PM</obj-plan-lastmodified>

  • A goal measure is uniquely identified by the combination of name, lookup_field, and lookup_value.  Example: Store sales for location of San Mateo, Store Sales in Belmont, etc.
  • The values loaded for PerfMin, PerfTarget, PerfMax, and the forecast values in the Business Goal file must be DIFFERENT numbers if the interpolate function is to work.
  • Loading in the same number across the record as a "placeholder" until true financial measures are known will crash the calculation.
  • Dummy data is OK, but the values must progress for the interpolation to work
  • You will import multiple rows of measures with the same goal name. However, the number indicated on the goal import step on the admin screen will show you the number of goal names (not the number of records you imported)
  • So you might import 22 rows in your Business goal file, but may have 10 unique goal names. May not want to rely on this number in the admin UI—look at the Goal Performance Report.
  • Reverse Metric can be used but require special configuration  You will need to put the performance levels and payout percents in the goal file High to low.
  • Another option is to do your business goals in a team or individual section and use P/GM integration with metric lookup's. Reverse Metrics are supported in metric lookup tables.
  • If you are importing goal information, results… into goal plans.
  • Make sure you run the Open&Save Documents in the form template settings for the PM form.
  • This will sync the PM and Variable Pay form. If you do not run this the Variable Pay program will not update with the latest information.


Column C in the business goals file should be the User ID of an admin user who will not be inactivated in the system and should be the same for all participants.

  • As a point of information, this user will receive multiple email notifications each time business goals are imported (assuming the appropriate email notifications templates are enabled).
  • For this reason, you may want to create a unique admin user whose only function is to “hold” all of the business goals for the company (and for whom you can set up an invalid email address so no one gets spammed!).
  • Column F is the goal plan id for the variable pay program and should be changed each year to correspond to the goal plan created for that year.
  • When the business goals file is imported, there is an option to Delete all business goals for this program prior to import.
  • Select this option only if you would like to do a full file replacement of all business goals for all employees; otherwise, imported business goals will be appended to the existing ones in the system.
  • It is strongly recommended that a full file replacement be done each time, so this option should generally be selected.

Business Goal Import File Formatting

The format for the Variable Pay Business Goal CSV import file is completely dependent on the format described in the TGM Objective_Import_Guide

  • The import file should be a CSV text file: comma-delimited, with string values enclosed in double quotes. The file can be named anything you wish (but should have a .csv extension).
  • Header rows should not be included. All fields are implied. Therefore empty or blank columns should accounted by delimiters.
  • No currency symbol in front of amounts.
  • No commas allowed in amounts.
  • If the source data is in Excel, save the file as a CSV (comma delimited) file, and watch out for these common problems:
    - String values that might have commas in them need to be explicitly quoted (e.g., “do this, do that”).
    - If you’ve used values for a key field (User ID, department, etc.) that are character values which look like numbers ("000123"), the cells in Excel need to be formatted as text so that Excel doesn’t convert them to true numbers (123).
  • SuccessFactors support a maximum of 5 target points to figure out the payout percentage. Below are combinations that the application can handle:
  1. Performance Min, Performance Target Low, Performance Target, Performance Target High, and Payout Percent Max. (5point)
  2. Performance Min, Performance Target Low, Performance Target, and Payout Percent Max. (4point)
  3. Performance Min, Performance Target, Performance Target High, and Payout Percent Max. (4point)
  4. Performance Min, Performance Target, and Payout Percent Max. (3point, most common)
  5. Performance Min, and Performance Target (2 point).
  6. All percentages should be imported in decimal format (i.e. 10% = .10)

For information on the columns contained within the gaols file, please review section 25.4.1 Prepare Your CSV File to Import Business Goals of our Variable Pay guide.

A sample Business Goal import file is also attached to this KBA.

Business Goal Import - Performance Considerations

While importing business goals into any Variable Pay template please take into consideration the following points:

  • Goals are mapped to users in the system for eligibility through lookup values in columns O & Q. These are referenced against data from your employee history.
  • Should you attempt to import individual goals as business goals, please note the system will not be able to identify the user(s) for which the gaols belong to. For example, each user in the history having their own respective goal which is specific to the user.
  • Variable Pay business goals are designed to be business goals rather than individual user goals. These are goals which are common to all users across an organisation.
  • If you do import gaols as individual goals, then please be aware that you will need to create the same number of Bonus Plans, weights and mappings to link your goals to your specific employee(s). 
    This is not a recommended practice as this will increase the amount of data being imported which will impact overall system performance during your import processes.
    Additionally, this will impact your bonus calculation process as this can run longer than expected due to the amount of data being calculated.
  • Following the import process this can also have a knock-on affect to worksheet performance due to the high volume of goals, plans etc being mapped to employees.

So, taking the above into consideration what is the recommendation?

If you have a large number of business goals as many customers do and see a performance issue during import, what can you do?

  • One - See which business goals can be combined. For example, can four business goals become one or two?
  • Two - Import your goals in batches when importing.
  • Three - If you have one admin who is the owner of all goals (from column C of the goals file), can you consider potentially having multiple owners? This can improve performance.
    For more information on this, please review our implementation guide.
  • Four - Should you have queries on the process of importing goals, questions on consolidating multiple goals etc Please reach out to your partner or Professional Services on best practices.


variable pay, goal file format, create goals, import goals, goals format, goals file, delete goals, goal eligibility, business goal lookul, goals formatting, goal import performance, goals best practice , KBA , sf varpay manage data , LOD-SF-VRP-ADM , Admin Tools, Settings, Permissions , LOD-SF-VRP , Variable Pay Programs , LOD-SF-VRP-BON , Bonus, calculating bonus, payouts, etc. , How To


SAP SuccessFactors Compensation all versions ; SAP SuccessFactors HXM Suite all versions